没有其他的key~ !
但是还老出这样的错误。
另外,我没设置unique,一定要把这个设置上吗?
3 个解决方案
#1
insert into t1
select f1,f2,
a.`a1`,
a.`a2`,
a.`a3`,
0 ,NULL
from t2 a
where a.`d`=d;
我发现问题来自上述语句。
t1 最后1列是autoincrement。
显然,应该是 t2表中返回多行时出错的。
但是比较恶心的是,不是每次都出错。
select f1,f2,
a.`a1`,
a.`a2`,
a.`a3`,
0 ,NULL
from t2 a
where a.`d`=d;
我发现问题来自上述语句。
t1 最后1列是autoincrement。
显然,应该是 t2表中返回多行时出错的。
但是比较恶心的是,不是每次都出错。
#2
这个意思大概就是说,你给主键上赋了一个原来已经存在的值。
比如原来主键上有1,2,3这三个值,如果你再给它赋值1,就会这样报错了。
比如原来主键上有1,2,3这三个值,如果你再给它赋值1,就会这样报错了。
#3
show index from t1
先看一下是不是主键是不是只有一个列?
先看一下是不是主键是不是只有一个列?
#1
insert into t1
select f1,f2,
a.`a1`,
a.`a2`,
a.`a3`,
0 ,NULL
from t2 a
where a.`d`=d;
我发现问题来自上述语句。
t1 最后1列是autoincrement。
显然,应该是 t2表中返回多行时出错的。
但是比较恶心的是,不是每次都出错。
select f1,f2,
a.`a1`,
a.`a2`,
a.`a3`,
0 ,NULL
from t2 a
where a.`d`=d;
我发现问题来自上述语句。
t1 最后1列是autoincrement。
显然,应该是 t2表中返回多行时出错的。
但是比较恶心的是,不是每次都出错。
#2
这个意思大概就是说,你给主键上赋了一个原来已经存在的值。
比如原来主键上有1,2,3这三个值,如果你再给它赋值1,就会这样报错了。
比如原来主键上有1,2,3这三个值,如果你再给它赋值1,就会这样报错了。
#3
show index from t1
先看一下是不是主键是不是只有一个列?
先看一下是不是主键是不是只有一个列?