源码如下:
db = QSqlDatabase::addDatabase("QODBC");
QSettings set("config.ini", QSettings::IniFormat);
if(set.contains("DBNAME"))
db.setDatabaseName(set.value("DBNAME").toString()); // 这个实际上就是数据源名DSN
if(set.contains("DBUSER"))
db.setUserName(set.value("DBUSER").toString());
if(set.contains("DBPASS"))
db.setPassword(set.value("DBPASS").toString());
if(set.contains("DBHOST"))
db.setHostName(set.value("DBHOST").toString());
bool ok = db.open();
if(!ok)
{
emit a("OPEN DB FAIL");
error=query.lastError();
emit a(error.driverText());
}else if(!db.isValid())
{
emit a("DB is not valid");
error=query.lastError();
emit a(error.driverText());
db.close();
}else
{
query.exec("insert into test(name,pass) values('Danny', 'Young')");
error=query.lastError();
emit a(error.driverText());
}
在执行exec时出现的Driver not loaded
而且
1.可以肯定的是,我有几次操作是成功的,因为我的数据库里填加了记录的
2.对应的驱动也是安装的了,但是后来一直出现这个问题,
望大侠们多多指教,并且附上源码
3.而且我安装官网的
http://lists.trolltech.com/qt-interest/2005-11/msg00649.html说明做了,
/*
Larry, again, create a directory where your application resides called
"sqldrivers" and move your drivers into it. That's how I install. There may
be an environment variable or perhaps you can create a symbolic link to the
folder I don't know as I haven't tried that.
*/
还是不行
[ 此贴被hetal在2006-01-10 11:44重新编辑 ]