How I can remove foreign key on same table | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
+ 1

How I can remove foreign key on same table

I have an table name of emp and I have applied primary key on empid 1st column and by mistake I have applied foreign key on the same emp table on same column without giveing name of foreign key. So, now the problem is I want to drop that foreign key but I don't know the name of foreign key which I applied on the same table.. how can I find out the name of foreign key ? If I got the name then I can drop that key Please share your thoughts

25th Apr 2021, 6:08 PM
Aadesh Walhe
Aadesh Walhe - avatar
1 Answer
+ 2
If this is MySQL, the following will show all constraints on a given table in a given database. Just substitute for <table> and <database>: SELECT TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_SCHEMA = '<database>' AND REFERENCED_TABLE_NAME = '<table>'; I got that from: https://stackoverflow.com/questions/201621/how-do-i-see-all-foreign-keys-to-a-table-or-column I ran that on one of my MySQL tables and got this output which shows the foreign key names: mysql> SELECT -> TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME -> FROM -> INFORMATION_SCHEMA.KEY_COLUMN_USAGE -> WHERE -> REFERENCED_TABLE_SCHEMA = 'hhaccessibility' AND -> REFERENCED_TABLE_NAME = 'question'; +---------------+-------------+-----------------------------------+-----------------------+------------------------+ | TABLE_NAME | COLUMN_NAME | CONSTRAINT_NAME | REFERENCED_TABLE_NAME | REFERENCED_COLUMN_NAME | +---------------+-------------+-----------------------------------+-----------------------+------------------------+ | user_answer | question_id | user_answer_question_id_foreign | question | id | | user_question | question_id | user_question_question_id_foreign | question | id | +---------------+-------------+-----------------------------------+-----------------------+------------------------+ 2 rows in set (6.09 sec)
25th Apr 2021, 11:03 PM
Josh Greig
Josh Greig - avatar