mysql创建外键的表_Mysql表创建外键报错解决方案
Mysql表创建外键报错解决方案,字段,名字,数据库,更新时间,歧义
Mysql表创建外键报错解决方案
易采站长站,站长之家为您整理了Mysql表创建外键报错解决方案的相关内容。
数据库表A:
CREATE TABLE task_desc_tab
(
id INT(11) PRIMARY KEY NOT NULL COMMENT '自增主键' AUTO_INCREMENT,
taskname 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,
taskname 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表创建外键报错解决方案的详细介绍。欢迎大家对Mysql表创建外键报错解决方案内容提出宝贵意见
mysql创建外键的表_Mysql表创建外键报错解决方案相关推荐
- mysql版本更新之后忘记登录密码_MySQL 密码遗忘和登陆报错问题
mysql登录密码忘记,其实解决办法很简单,只需要在mysql的主配置文件my.cnf里添加一行"跳过授权表"的参数选择即可! 在my.cnf中添加下面一行: [root@test ...
- mysql数据库的创建外键_Mysql表创建外键报错解决方案
数据库表A: CREATE TABLE task_desc_tab ( id INT(11) PRIMARY KEY NOT NULL COMMENT '自增主键' AUTO_INCREMENT, t ...
- mysql 存储过程建表_MySQL 存储过程创建表
创建 CREATE PROCEDURE Pro_IsExistTable(ableName varchar(100),out outputParam int) BEGIN set @csql=con ...
- asp.net使用post方式action到另一个页面,在另一个页面接受form表单的值!(报错,已解决!)...
asp.net使用post方式action到另一个页面,在另一个页面接受form表单的值!(报错,已解决!) 原文:asp.net使用post方式action到另一个页面,在另一个页面接受form表单 ...
- selenium IE保护模式报错解决方案(使用python写注册表)
selenium IE保护模式报错解决方案 JAVA:https://www.cnblogs.com/feifeidxl/p/4551363.html java的处理可以参考此博客,实践可行,使用的s ...
- 【踩坑记录】mybatis-plus的insert方法,默认会生成一个uuid作为主键,导致类型不一致,存入数据库报错
[踩坑记录]mybatis-plus的insert方法,默认会生成一个uuid作为主键,导致类型不一致,存入数据库报错 报错记录 解决方案 推荐方案 使用uuid作为主键,修改id的类型为bigint ...
- kali linux 安装 Mysql Can‘t read from messagefile 报错解决方案
kali linux 安装 Mysql Can't read from messagefile 报错解决方案 参考文章: (1)kali linux 安装 Mysql Can't read from ...
- Eclipse中创建SpringBoot项目流程,及报错解决方案
Eclipse中创建SpringBoot项目流程,及报错解决方案 参考文章: (1)Eclipse中创建SpringBoot项目流程,及报错解决方案 (2)https://www.cnblogs.co ...
- Mysql启动报错解决方案:Failed to open log (file ‘./mysql-bin.000901‘, errno 2)
Mysql启动报错解决方案:Failed to open log (file './mysql-bin.000901', errno 2) 参考文章: (1)Mysql启动报错解决方案:Failed ...
最新文章
- Keepalived实现LVS的高可用全解析
- Qt Creator指定编辑器设置
- 如何让SAP Spartacus的非英语页面正常显示
- mongodb数据库显示obj_MongoDB创建和查看数据库
- 如何允许远程连接到MySQL
- 走火入魔的 C/C++ 如何通过编译器预定义的宏值来区分 target OS 是 Windows 还是 Linux...
- zbb20180613 Spring MVC实现大文件下载功能
- hdu 1556 Color the ball (线段树做法)
- 关于WEB ServiceWCFWebApi实现身份验证之WEB Service篇
- ansible 建 kubernetes 证书签名请求_Kubernetes 两步验证 - 使用 Serverless 实现动态准入控制
- D star路径搜索算法
- java的一些课程设计题目_Java课程设计
- Springboot毕设项目监狱管理系统xu08n(java+VUE+Mybatis+Maven+Mysql)
- 标准情况下绝对湿度与相对湿度excel表
- 在postgre数据库中,强制删除一个数据库
- PS各个工具的字母快捷键和英…
- 不恰当使用线程池处理 MQ 消息引起的故障
- Android11 热点配置信息保存分析
- Hbase与Oracle比较(列式数据库与行式数据库)
- A段架构师_隽语集(IT+設計思考_2001)