다른 테이블의 FK를 참조하도록 현재 일반 INT (16) 인 열을 업데이트하려고합니다. 나는 다음을 시도했지만 오류로했습니다MySQL에 외래 키 추가
ALTER TABLE ts_keys ADD CONSTRAINT FK_account_id FOREIGN KEY (account_id) REFERENCES accounts(id) ON UPDATE CASCADE ON DELETE CASCADE
편집 :
Can't create table (errno: 150)
두 테이블 이노 디비 있습니다 : 죄송합니다, 오류를 추가하는 것을 잊었다.
편집 2 : 나는 또한 시도 테이블하지만 같은 오류를 다시 생성 :
CREATE TABLE ts_keys (
id int PRIMARY KEY AUTO_INCREMENT,
account_id int,
FOREIGN KEY fk_account_id1(account_id) REFERENCES accounts(id)
) ENGINE=InnoDB;
오류가 있습니까? 어떤 오류가 있습니까? – Barmar
첫 번째 구문이 잘못되었으므로 MySQL 매뉴얼을 확인하십시오. 'MODIFY columnname' 다음에 외래 키 정의가 아닌 열 정의가 와야합니다. 두 번째 오류의 경우 오류 150의 원인을 설명하는 다른 많은 질문이 있습니다. 가능한 원인은 다양하며 그 원인을 알 수있는 충분한 정보를 제공하지 않았습니다. 그래서 수색을해라. – Barmar