如何在单个MySQL语句中添加一列并使其成为外键?
在MySQL中,我可以在同一个语句中添加一个列和外键? 什么是适当的语法添加fk?
这是我的SQL:
ALTER TABLE database.table ADD COLUMN columnname INT DEFAULT(1), FOREIGN KEY (fk_name) REFERENCES reftable(refcolumn) ON DELETE CASCADE;
…和附带的错误信息:
你的SQL语法有错误, 检查对应于您的MySQL服务器版本的手册,以便在第4行的'FOREIGN KEY(fk_name)REFERENCES reftable(refcolumn)ON DELETE CASCADE'附近使用正确的语法
尝试这个:
ALTER TABLE database.table ADD COLUMN columnname INT DEFAULT(1), ADD FOREIGN KEY fk_name(fk_column) REFERENCES reftable(refcolumn) ON DELETE CASCADE;
以下查询通过alter query添加一列,约束查询使其成为单个mysql查询中的FK。 你可以这样做,
句法:
ALTER TABLE `SCHEMANAME`.`TABLE1` ADD COLUMN `FK_COLUMN` BIGINT(20) NOT NULL, ADD CONSTRAINT `FK_TABLE2_COLUMN` FOREIGN KEY (`FK_COLUMN`) REFERENCES `SCHEMANAME`.`TABLE2`(`PK_COLUMN`);
例:
ALTER TABLE `USERDB`.`ADDRESS_TABLE` ADD COLUMN `USER_ID` BIGINT(20) NOT NULL AFTER `PHONE_NUMBER`, ADD CONSTRAINT `FK_CUSTOMER_TABLE_CUSTOMER_ID` FOREIGN KEY (`USER_ID`) REFERENCES `USERDB`.`CUSTOMER_TABLE`(`CUSTOMER_ID`);