首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用qsqlquery删除

使用qsqlquery删除
EN

Stack Overflow用户
提问于 2012-03-21 19:19:38
回答 1查看 6K关注 0票数 2

我试着用下面的代码用qt删除:

代码语言:javascript
复制
int jobId = 655;
query.prepare("DELETE FROM jobs WHERE jobId = '" + QString::number(jobId) + "'");
QString error = query.lastError().text();
if (query.exec())
    qDebug() << "DELETE ok";
else
    qDebug() << error;

如果jobId存在,则一切正常,但如果不存在,则显示"DELETE ok“。

我怎样才能检查这种情况?

非常感谢你

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-21 19:35:14

如果DELETE查询没有要删除的内容,则它不会生成错误。

如果使用QSqlQuery::numRowsAffected删除了某些内容,您可能会发现。

但是,如果您想在删除之前知道该id是否存在,则必须对该id执行单独的SELECT请求。

PS:您应该使用addBindValuebindValue在查询字符串中插入值:

代码语言:javascript
复制
query.prepare("DELETE FROM jobs WHERE jobId = ?");
query.addBindValue(jobId);
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9803572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档