在INSERT之前就应该先校验是否有重复项。
示例代码:
//假设dbmysql是你的连接对象
QSqlQuery query(dbmysql);
query.prepare("SELECT * FROM music "
"WHERE `music_path` =?;");
query.bindValue(0, music_path);//music_path是你的路径的QString
query.exec();
//开始判断如果是在单独的函数中,可以直接 return (query.next());
if(query.next())
QMessageBox::warning(0,QString::fromLocal8Bit("警告!"),QString::fromLocal8Bit("重复的记录,操作失败"));
else{
//再执行你的插入语句
}
建议将之放入bool函数中。