我在mysql中创建了一个包含2个复合键的表。我现在正试图插入重复的值,所以我得到一个系统生成的错误消息。我想隐藏那个错误消息并显示我自己的错误消息-我该怎么做?我尝试使用“警告”,但系统生成的消息仍在显示。
$sts = $dbh->prepare("insert into Enrolled(Student_Id,CourseID,DOJ) values(@StudentID,$CourseID,CURDATE())");
$sts->execute() or warn ("Error");
输出:
dbd::mysql::st execute失败:stud ent.pm第182行,第10行的键“primary”的条目“16-11”重复。错误
1条答案
按热度按时间wko9yo5t1#
你可以设置
PrintError => 0
属性。默认情况下,它处于启用状态。您还可以尝试在中设置此属性$dbh->prepare
. 应该只根据文档处理该语句https://metacpan.org/pod/dbi#printerror