2个问题:插入出现主键重复;删除没有级联

MySql 码拜 6年前 (2016-02-16) 425次浏览
1. 在php程序里删除 jibenxinxi 表里的记录,对应在 kuozhanxinxi 表里的记录为什么没有自动删除
2.(不知道是不是性能问题)尽管 jibenxinxi 表的主键是 var_xuehao,但是在php程序中往里 insert 数据的时候,有时候会出现主键重复的情况,例如一次操纵后表里甚至会出现相同的3条:
var_xuehao | var_xingming
123              | 张三
123              | 张三
123              | 张三
这算什么情况?!可有解决办法?
以下是建表的脚本–
CREATE TABLE jibenxinxi (
var_xingming nVARCHAR(10),
var_xuehao nVARCHAR(20) NOT NULL,
PRIMARY KEY (var_xuehao)
);
CREATE TABLE kuozhanxinxi (
int_kuozhanxinxi INT NOT NULL AUTO_INCREMENT,
var_xuehao nVARCHAR(20) NOT NULL,
var_shenfen nVARCHAR(20),
PRIMARY KEY (int_kuozhanxinxi)
);
ALTER TABLE kuozhanxinxi ADD CONSTRAINT kuozhanxinxi_jibenxinxi_FK FOREIGN KEY (var_xuehao)
REFERENCES jibenxinxi (var_xuehao)
ON DELETE CASCADE;
解决方案

10

当出现三条所谓相同记录时,建议用MYSQLDUMP导出,然后贴出来分析。
是不是其中有空格或其它不可见字符。

10

引用 10 楼 kasoya 的回复:
Quote: 引用 9 楼 u011575570 的回复:
Quote: 引用 7 楼 kasoya 的回复:
Quote: 引用 6 楼 u011575570 的回复:

会不会是nVARCHAR的问题,明天测试下

额 本人不太明白你的意思 可否请你说的具体一点呢

本人认为nvarchar与varchar不一样,但是测试是一样的。你今天测试了4楼说的嘛?

本人在提问之前把那几条主键重复的都删了…唉

哦那现在会有这个错误码?


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明2个问题:插入出现主键重复;删除没有级联
喜欢 (0)
[1034331897@qq.com]
分享 (0)