Knex: рдЯреЗрдмрд▓ рдЫреЛрдбрд╝рддреЗ рд╕рдордп рдХреИрд╕реНрдХреЗрдб рд╡рд┐рдХрд▓реНрдк

рдХреЛ рдирд┐рд░реНрдорд┐рдд 12 рд╕рд┐рддре░ 2015  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: knex/knex

рдРрд╕рд╛ рдХреБрдЫ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛:

knex.schema.dropTable('users', true);

//OR

knex.schema.cascade().dropTable('users');

рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛:

DROP TABLE users CASCADE;

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╡реИрд╕реЗ рдпрд╣ рдмреЛрд▓реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред рдЗрд╕рд╕реЗ рднреА рдмреБрд░реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ MySQL Documentation рдХреЗ рдЕрдиреБрд╕рд╛рд░, CASCADE рдХреАрд╡рд░реНрдб рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ рд▓реЗрдХрд┐рди рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред (рдПрдХ рддрд░рдл рдХреЗ рд░реВрдк рдореЗрдВ, MySQL рднреА рдЪреБрдкрдЪрд╛рдк CHECK рдмрд╛рдзрд╛рдУрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдореБрдЭреЗ рдЕрддреАрдд рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛ рдХрд░рддрд╛ рд╣реИ)ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рд╣рдо рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ (рдЬреЛ рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛), рддреЛ рдпрд╛ рддреЛ рдЙрди рдмреЛрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝реЙрд▓рдмреИрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рдЙрдЪрд┐рдд CASCADE рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдХрдореА рд╣реИ рдпрд╛, рдпрджрд┐ рдЗрд╕реЗ рдлрд╝реЙрд▓рдмреИрдХ рдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, MySQL рдореЗрдВ рдЖрдк INFORMATION_SCHEMA.KEY_COLUMN_USAGE рдХреНрд╡реЗрд░реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ table_name + '.' + column_name рд╕рдВрдпреЛрдЬрди рдФрд░ рдХрд┐рдирд╛рд░реЛрдВ рд╕реЗ REFERENCED_TABLE_NAME.REFERENCED_COLUMN_NAME рд╕реЗ TABLE_NAME.COLUMN_NAME рдХреЗ рд▓рд┐рдП рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЧреНрд░рд╛рдл рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдлрд┐рд░ рдЖрдк рдЧреНрд░рд╛рдл рдкрд░ рдПрдХ рдЯреЛрдкреЛрд▓реЙрдЬрд┐рдХрд▓ рд╕реЙрд░реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЖрдкрдХреЛ рдбреНрд░реЙрдк рдСрд░реНрдбрд░ рджреЗрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдпрд╣ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред INFORMATION_SCHEMA рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдЪреНрдЫреА рдмрд╛рдд рдпрд╣ рднреА рд╣реИ рдХрд┐ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди SQL рдмреЛрд▓рд┐рдпреЛрдВ рдореЗрдВ рдкреЛрд░реНрдЯреЗрдмрд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ред рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдпрд╣ рд╕рдЪ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдХрд╣рд╛рдиреА рд╣реИред

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

.truncate рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди

+1

рд╡реИрд╕реЗ рдпрд╣ рдмреЛрд▓реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред рдЗрд╕рд╕реЗ рднреА рдмреБрд░реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ MySQL Documentation рдХреЗ рдЕрдиреБрд╕рд╛рд░, CASCADE рдХреАрд╡рд░реНрдб рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ рд▓реЗрдХрд┐рди рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред (рдПрдХ рддрд░рдл рдХреЗ рд░реВрдк рдореЗрдВ, MySQL рднреА рдЪреБрдкрдЪрд╛рдк CHECK рдмрд╛рдзрд╛рдУрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдореБрдЭреЗ рдЕрддреАрдд рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛ рдХрд░рддрд╛ рд╣реИ)ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рд╣рдо рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ (рдЬреЛ рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛), рддреЛ рдпрд╛ рддреЛ рдЙрди рдмреЛрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝реЙрд▓рдмреИрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рдЙрдЪрд┐рдд CASCADE рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдХрдореА рд╣реИ рдпрд╛, рдпрджрд┐ рдЗрд╕реЗ рдлрд╝реЙрд▓рдмреИрдХ рдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, MySQL рдореЗрдВ рдЖрдк INFORMATION_SCHEMA.KEY_COLUMN_USAGE рдХреНрд╡реЗрд░реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ table_name + '.' + column_name рд╕рдВрдпреЛрдЬрди рдФрд░ рдХрд┐рдирд╛рд░реЛрдВ рд╕реЗ REFERENCED_TABLE_NAME.REFERENCED_COLUMN_NAME рд╕реЗ TABLE_NAME.COLUMN_NAME рдХреЗ рд▓рд┐рдП рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЧреНрд░рд╛рдл рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдлрд┐рд░ рдЖрдк рдЧреНрд░рд╛рдл рдкрд░ рдПрдХ рдЯреЛрдкреЛрд▓реЙрдЬрд┐рдХрд▓ рд╕реЙрд░реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЖрдкрдХреЛ рдбреНрд░реЙрдк рдСрд░реНрдбрд░ рджреЗрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдпрд╣ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред INFORMATION_SCHEMA рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдЪреНрдЫреА рдмрд╛рдд рдпрд╣ рднреА рд╣реИ рдХрд┐ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди SQL рдмреЛрд▓рд┐рдпреЛрдВ рдореЗрдВ рдкреЛрд░реНрдЯреЗрдмрд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ред рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдпрд╣ рд╕рдЪ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдХрд╣рд╛рдиреА рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

marianomerlo picture marianomerlo  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

PaulOlteanu picture PaulOlteanu  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fsebbah picture fsebbah  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

lanceschi picture lanceschi  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mishitpatel picture mishitpatel  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ