sql >> Databasteknik >  >> RDS >> Mysql

Ta bort alla främmande nycklar i databasen (MySql)

Du kan använda denna SQL för att generera ALTER TABLES (!!YOUR_SCHEMA_HERE!! måste ersättas av ditt schema):

SELECT concat('alter table `',table_schema,'`.`',table_name,'` DROP FOREIGN KEY ',constraint_name,';')
FROM information_schema.table_constraints
WHERE constraint_type='FOREIGN KEY'
AND table_schema='!!YOUR_SCHEMA_HERE!!';

Det kommer att generera SQL så här:

alter table `viewpoint_test`.`answer_code` DROP FOREIGN KEY fk_answer_code_codebook_item1;
alter table `viewpoint_test`.`answer_code` DROP FOREIGN KEY fk_answer_code_questionary_answer1;
alter table `viewpoint_test`.`codebook` DROP FOREIGN KEY codebook_ibfk_1;
...

Med "schemanamn" menar jag ditt databasnamn. Det är samma sak.



  1. Ersätter \r\n med PHP

  2. Uppdatera uttalande i MySQL med C#

  3. skillnaden mellan ON-klausul och att använda klausul i sql

  4. 10 SP_EXECUTESQL Gotchas att undvika för bättre dynamisk SQL