• 5562阅读
  • 1回复

使用QtSql连接到Sybase Adaptive Server Anywhere 9的问题 [复制链接]

上一主题 下一主题
离线kevintian198
 
只看楼主 倒序阅读 楼主  发表于: 2009-08-23
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
各位兄弟
我在用QtSql连接到Sybase Adaptive Server Anywhere 9时,遇到一个问题,请各位不吝赐教。

我用的是Qt是Qt 4.5(安装的是qt-sdk-win-opensource-2009.03.1.exe, 重新用vs.net编译的).
根据Qt的文档,我自己编译了QDTS驱动,(使用的是Sybase Open Client)
启动数据库服务器的命令如下
"C:\Program Files\Sybase\SQL Anywhere 9\win32\dbsrv9.exe" "C:\MYDB.db" -n MYDB

测试代码如下
#include <QApplication>
#include <QtSql>

int main(int argc,char **argv)
{
QApplication app(argc,argv);
QSqlDatabase db=QSqlDatabase::addDatabase("QTDS");
if(!db.isValid())
{
qDebug()<<"QTDS driver is not valid";
return 0;
}

db.setHostName("localhost");
db.setDatabaseName("MYDB");
db.setUserName("dba");
db.setPassword("sql");
db.setPort(2638);

if(db.open())
{
qDebug()<<"OK, database connected";
db.close();
}
else
{
qDebug()<<"Error : "<<db.lastError().text();
}
return 0;
}

程序的输出如下
QTDSDriver error (20012): [Specified server name attribute could not be found] [There is no OS level error]
Error : " QTDS: Unable to open connection"

不知道是哪里出了问题,请各位赐教。
谢谢

离线kevintian198
只看该作者 1楼 发表于: 2009-08-24
没有人知道原因吗?
快速回复
限100 字节
 
上一个 下一个