关于QSqlQuery类的size()和numRowsAffected成员函数的问题。
使有的是QT5,系统是Win7 64位,数据库是装在Win7上的Sqlserver2008,程序是通用ODBC和数据库连接。下面是代码:
bool test=lsq_cx.exec(ls_sql);
lsq_cx是一个QSqlQuery,ls_sql是一条select语句,代码执行后test为true,这时候问题来了,如果我接下执行lsq_cx.size(),那么返回-1,而如果我执行lsq_cx.numRowsAffected(),会返回正确的行数。我看了下QSqlQuery的帮助,那意思是说如果是select语句的话,用size()返回结果就是正确的,如果是非select语句,那么用numRowsAffected()才会返回正确,但是实际结果怎么反过来了?还是我对英文理解得有问题?请各位达人指正。
以上,感谢赐教。