如何解决此问题?PDO - 未捕获的PDOException:SQLSTATE [23000]:完整性约束冲突
未捕获PDOException:SQLSTATE [23000]:完整性约束违规:1062重复条目
我使用的唯一键上我的表
CREATE TABLE `blog` (
`id` int NOT NULL AUTO_INCREMENT,
`title` varchar(100) NOT NULL,
`str` varchar(100) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `title` (`title`),
UNIQUE KEY `str` (`str`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
如果我输入了相同的数据的时候,我得到这个错误
如果我创建没有UNIQUE KEY的datable它运行良好
我PDO插入代码
$sql = "INSERT INTO blog(title,str) VALUES(:title,:str)";
$stmt = $DBcon->prepare($sql);
$stmt->bindparam(':title', $title,PDO::PARAM_STR);
$stmt->bindparam(':str', $str,PDO::PARAM_STR);
$stmt->execute();
如果删除$stmt->execute();
的唯一键的概念运作良好
我试过的mysqli它工作没有任何问题,但是在PDO我得到这个错误
嗯,它会抛出一个异常,因为您将表设置为UNIQUE,所以无法为同一个字段多次设置相同的值。或者我误解了你的问题? – Geshode
你是对的我使用UNIQUE来避免重复条目,但在MYSQLI中效果很好,但在PDO中我得到了这个错误 –
当你使用mysqli和pdo时,你确定插入了完全相同的值(已经存在)吗? –