如何使用 QtSql 获取 EXISTS 运算符的返回值
How do I get the return value of the EXISTS operator with QtSql?
EXISTS 运算符的计算结果始终为整数值 0 和 1 之一。我试图通过QSqlQuery::value(int index)获取它们。但不知何故,这个结果与列无关。如何使用 QtSql 获取 EXISTS 运算符的返回值?
query.prepare("SELECT EXISTS(SELECT 1 FROM files WHERE pid=:pid AND files.name=':name' LIMIT 1);");
query.bindValue(":pid", PID);
query.bindValue(":name", fi.fileName());
if (!query.exec()){
qCritical() << query.lastError();
qFatal(SQLERR);
}
query.prepare("SELECT EXISTS(SELECT 1 FROM files WHERE pid=:pid AND files.name=':name' LIMIT 1);");
query.bindValue(":pid", PID);
query.bindValue(":name", fi.fileName());
if (!query.exec()){
qCritical() << query.lastError();
qFatal(SQLERR);
}
else
{
if( query.next( ) )
QMessageBox::information( NULL , "Test" , query.value( 0 ).toString( ) );
}
这对我来说非常有效。
基本上.next( )
将检索下一个可能的查询结果,然后您可以使用query.value( 0 )
访问它,如果该值存在于我的查询中,我会返回1
,当它不存在时,我会得到0
相关文章:
- 重载更少,则运算符返回相反的布尔值
- 使用重载 [] 运算符返回 std::map() 的可赋值
- 运算符重载是否真的需要返回值C++?
- 赋值运算符的返回值可以作为参考吗?
- 重载运算符返回什么类型的值(对于用户定义的类型):右值还是左值?
- 字符串流运算符>>返回值
- 动态指针引用数组由三元运算符返回值,但有异常
- ()运算符的返回值
- 函数返回值的位运算符提升
- 赋值运算符重载 c++ 的返回值
- 重载运算符->() 以更改被调用函数的返回值
- 获取对运算符 [] 返回值unordered_map引用
- 如何返回重载二元运算符的值
- 为什么三元运算符阻止返回值优化
- 没有返回值的c++类成员运算符定义
- 为什么在传递重载运算符的返回值时不调用复制构造函数
- 数组[]运算符返回参考,因此如何更改其值
- 重载不同返回值的运算符new
- 如何使用 QtSql 获取 EXISTS 运算符的返回值
- 矢量运算符[]返回值