Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Alle Fremdschlüssel in der Datenbank löschen (MySql)

Sie können diese SQL verwenden, um ALTER TABLES zu generieren (!!YOUR_SCHEMA_HERE!! muss durch Ihr Schema ersetzt werden):

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!!';

Es generiert SQL wie folgt:

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;
...

Mit "Schemaname" meine ich Ihren Datenbanknamen. Es ist dasselbe.