如何在使用perl向mysql数据库添加重复数据时隐藏系统生成的错误消息?

3pmvbmvn  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(344)

我在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”重复。错误

tez616oj

tez616oj1#

你可以设置 PrintError => 0 属性。默认情况下,它处于启用状态。您还可以尝试在中设置此属性 $dbh->prepare . 应该只根据文档处理该语句https://metacpan.org/pod/dbi#printerror

相关问题