2014-12-24 3 views
0

다른 테이블의 외래 키인 열을 삭제하려고 할 때 문제가 있습니다. 실수로 열을 만들었습니다.MySQL에서 외래 키 삭제

First table 'users' with Columns 'ID (Primary key)','user_rest_id(Foreign key)' 
Second table 'rest' with Columns 'ID (Primary key)','user_id(Foreign key)' 

'user_rest_id'열을 삭제하려고합니다. 실수로 그것을 만들었고 테이블 '휴식' 'ID'와 연결되어 있습니다. 열 드롭에

:

# 1553 - 인덱스 'user_rest_id'을 (를) 삭제할 수 없습니다 : 외래 키 제약 조건이 필요합니다.

나는 말한다 외래 키를 삭제하려고 할 때 :

# 1091 - 'user_rest_id'을 (를) 삭제할 수 없습니다; 해당 열/키가 존재하는지 확인하십시오.

+0

'user_rest_id'에서 외래 키에 해당하는 제약 조건 이름을 결정하고 해당 이름을 사용하여 FK 제약 조건을 삭제해야 할 수 있습니다. 그런 다음에 만 열을 삭제할 수 있습니다. 개요 스키마는 어떤 테이블의 열이 FK에 의해 참조되는지를 문서화하지 않기 때문에, 나는 얼마나 혼란 스러울 지 잘 모르겠습니다. 사용자가 FK를 사용하고 나머지는 FK를 사용하는 경우 일 수 있습니다. –

+0

정확히 말했듯이. 나는 그것을 실수로 창조했다. 'user_rest_id'는 외래 키가 아닌 단순한 열이어야합니다. – WilsonG

답변

1

제약 조건을 사용하여 외래 키를 생성했다고 가정합니다.

ALTER TABLE users 
DROP FOREIGN KEY fk_users; //Your actual constraint name 

희망이 도움이됩니다.

+0

답해 주셔서 감사합니다. – WilsonG

+0

환영합니다 ....... :) –