我在课程和教练之间有一对多的关系,我想放弃.当我试图删除课程表中的instructorID时,它告诉我.我不能放弃它,因为它是外键.然后我决定放弃它:
ALTER TABLE course DROP FOREIGN KEY instructorID
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误:
#1091 - Can't DROP 'InstructorID'; check that column/key exists
Run Code Online (Sandbox Code Playgroud)
我不知道这个错误意味着什么.我究竟做错了什么?
小智 44
请运行SHOW CREATE TABLE course;
以确保instructorID是外键约束的名称.
附加:错误意味着MySQL搜索名为"InstructorID"的外键约束,但没有具有此类名称的约束,也许这是您的列名,但您必须使用约束名称来删除外键.
Elh*_*ani 25
运行后SHOW CREATE table course;
你应该找到fk符号,它通常类似于下面的符号:
(course_ibfk_1)
Run Code Online (Sandbox Code Playgroud)
根据您使用的mysql版本,它可能会有所不同,然后使用fk符号删除外键,如下所示:
alter table course drop foreign key course_ibfk_1;
Run Code Online (Sandbox Code Playgroud)
小智 6
您需要删除“外键约束”和“键”。
Alter Table <table name> drop foreign key <constraint_name>
Alter table <table name> drop key <column name>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
59968 次 |
最近记录: |