找回密码
 立即注册
收起左侧

Qt 4.8 链接SQLServer2000 select语句不能用

0
回复
7798
查看
[复制链接]
累计签到:207 天
连续签到:1 天
来源: 2017-3-21 08:39:24 显示全部楼层 |阅读模式
5Qter豆
开发Ubuntu
QT4.8

远程SQL2000

#include <QString>
#include <QTextCodec>
#include <QtPlugin>
#include <QSqlDatabase>
#include <QtSql>
#include <QDebug>
#include <QSqlDriver>

/*连接数据库*/
void OpenDatabase()
{
   QSqlDatabase db=QSqlDatabase::addDatabase("QODBC");
   db.close();
   QString dsn = QString("DRIVER={MSSQL2000};SERVER=%1;port=%2;DATABASE=%3;uid=%4;pwd=%5;")
           .arg("svrt1.btw.cn")
           .arg(1433)
           .arg("basedb")
           .arg("sa")
           .arg("anliang");

   db.setDatabaseName(dsn);

   if(!db.open())
   {
         qDebug("Error:%s",qPrintable(db.lastError().text()));
   }
   else
   {
         qDebug("Connect Successful!!!");

         QSqlQuery query;

        query.prepare("use basedb select * from ITEM;");

         if(!query.exec())
         {
            qDebug("Error");
            //qDebug()<<"query.lastError";
             qDebug("Error:%s",qPrintable(db.lastError().text()));
         }
         else
         {
             qDebug()<<query.next();
             while(query.next())///////////////////////这里怎么也是false
             {
                  qDebug("999999");
             }
         }
         db.close();
   }
}

int main()
{
    qDebug()<<"Start!";
    OpenDatabase();
    qDebug()<<"End!";

    return 0;
}

输出出结果

/home/vmuser/Test-build-desktop-Qt_4_8_1___PATH________/Test 启动中...
Start!
Connect Successful!!!
false
End!
/home/vmuser/Test-build-desktop-Qt_4_8_1___PATH________/Test 退出,退出代码: 0
{1 ?}

但是用insert与delete等sql语句没有问题的
有人遇到过吗?

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了