• 5746阅读
  • 2回复

急!QSqlQuery能 insert 但不能 select [复制链接]

上一主题 下一主题
离线csoapy
 

只看楼主 倒序阅读 楼主  发表于: 2010-04-02
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
用的是Qt 4.6.2开源版+sql 2005。
  1.     QSqlQuery query = QSqlQuery(db);
  2.     bool result = query.exec("SELECT Rno FROM tbl_phone WHERE Tel=\'158123456\'");
  3.     bool active = query.isActive();
  4.     bool sel = query.isSelect();
  5.     bool valid = query.isValid();
  6.     int rno = query.value(0).toInt();


数据库里面对应的rno是3,但query.value(0).toInt()却是0。
上面四个bool值除了result其它全是false。

在最后一句之后下断点,最后找到一个QSqlResult错误:
"  [Microsoft][ODBC SQL Server Driver][SQL Server]对象名  'tbl_phone 无效。 [Microsoft][ODBC SQL Server Driver][SQL Server]该游标未声明。"

刚开始怀疑是sql 2005的问题,所以把sql 2005 sp3补丁包给打上了,也还是不行。

现在怀疑是QT sql server驱动的事,但是觉得无从下手。
离线xtfllbl

只看该作者 1楼 发表于: 2010-04-02
可以连接,可以insert,那就肯定不是驱动的事情,
上海欢迎您
离线csoapy

只看该作者 2楼 发表于: 2010-04-02
引用第1楼xtfllbl于2010-04-02 16:22发表的  :
可以连接,可以insert,那就肯定不是驱动的事情,


驱动用的是qt 4.6.2自带的,可能是驱动做的不好,因为2005打没打sp3补丁都是一样的错误。
[ 此帖被csoapy在2010-04-02 18:35重新编辑 ]
快速回复
限100 字节
 
上一个 下一个