国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Mysql表創建外鍵報錯解決方案

瀏覽:2日期:2023-10-11 13:42:25

數據庫表A:

CREATE TABLE task_desc_tab( id INT(11) PRIMARY KEY NOT NULL COMMENT ’自增主鍵’ AUTO_INCREMENT, <strong>taskname</strong> VARCHAR(200) NOT NULL COMMENT ’任務名字’, sqlname VARCHAR(20) NOT NULL COMMENT ’sql文件名字’, params VARCHAR(5000) NOT NULL COMMENT ’任務參數,格式為一個JSON字符串’, updatetime TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT ’更新時間’, detail VARCHAR(3000) COMMENT ’任務一些描述信息,只是備注信息作用’) ENGINE = InnoDB DEFAULT CHARSET = utf8;

數據庫B:

CREATE TABLE exec_plan_tab( id INT(11) PRIMARY KEY NOT NULL AUTO_INCREMENT, <strong>taskname</strong> VARCHAR(200) NOT NULL, startdate DATE NOT NULL, enddate DATE NOT NULL, updatetime TIMESTAMP DEFAULT CURRENT_TIMESTAMP, CONSTRAINT exec_plan_tab_task_desc_tab_taskname_fk FOREIGN KEY (taskname) REFERENCES task_desc_tab (taskname)) ENGINE = InnoDB DEFAULT CHARSET = utf8;

目標:創建表使得表B中的taskname為外鍵,參考表A中的taskname字段,創建表發現報錯如下:

[2018-07-19 15:02:29] [HY000][150] Create table ’daxin/#sql-5d_30’ with foreign key constraint failed. There is no index in the referenced table where the referenced columns appear as the first columns.[2018-07-19 15:02:29] [HY000][1215] Cannot add foreign key constraint[2018-07-19 15:02:29] [HY000][1215] Cannot add foreign key constraint 

經過排查找到問題原因: 表A中的taskname必須使用UNIQUE字段修飾,這樣保證記錄唯一性,當表B參考時候不會出現歧義。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 开封市| 民县| 永靖县| 澄迈县| 辽阳县| 花莲县| 柘荣县| 宁乡县| 宜川县| 黄浦区| 龙山县| 龙陵县| 大同县| 志丹县| 南川市| 什邡市| 调兵山市| 河西区| 元阳县| 揭阳市| 泸州市| 封丘县| 繁昌县| 开阳县| 浦东新区| 淮北市| 岑溪市| 平江县| 瑞金市| 菏泽市| 健康| 建阳市| 同心县| 宝兴县| 两当县| 山东| 宣威市| 沛县| 清河县| 南陵县| 徐州市|