我有一个用户主表
create table `users` (
`id` int (10),
`first_name` varchar (192),
`last_name` varchar (192),
`password` varchar (96),
`phone` int (10),
`email` varchar (768),
`date_created` timestamp
);
然后我有一个帐户表,外键user_id引用用户主表
create table `accounts` (
`id` int (10),
`user_id` int (11),
`account_number` bigint (12),
`account_type` varchar (192),
`balance` double ,
`currency` varchar (9),
`date_created` timestamp
);
最后,我有一个交易表,但是我也无法将外键分配给用户ID
create table `transactions` (
`id` int (10),
`user_id` int (11),
`from_account_id` int (12),
`to_account_id` int (11),
`amount` double ,
`currency` varchar (9),
`timestamp` timestamp
);
每当我尝试从事务表中向user_id添加外键以引用帐户中的user_id或在users表中引用id时,我都会得到相同的错误。
无法添加或更新子行:外键约束失败 (
bank
。#sql-34ec_2
,CONSTRAINT#sql-34ec_2_ibfk_3
FOREIGN KEY (user_id
)参考accounts
(user_id
))
我怎样才能避免这种情况,我还能做些什么才能正确引用特定细胞?
答案 0 :(得分:0)
截断所有表,然后为此值设置外键。
答案 1 :(得分:0)
您的数据类型可能有所不同。 10对11.显示代码你正在执行