wfwjp |
2017-04-19 16:44 |
测试了下 将 netdb.removeDatabase("netdb"); netdb=QSqlDatabase::addDatabase("QODBC","netdb"); 改为 netdb=QSqlDatabase::addDatabase("QODBC","netdbtest"); 就可以直接使用netquery了。
- QSqlDatabase netdb=QSqlDatabase::addDatabase("QODBC","netdb");
netdb.setDatabaseName(QString("DRIVER={SQL SERVER};" "SERVER=%1;" //服务器名称 "DATABASE=%2;"//数据库名 "UID=%3;" //登录名 "PWD=%4;" //密码 ).arg(netservername) .arg(netdatabase) .arg(netlogid) .arg(netlogpassword) );
if ( !netdb.open()) { QMessageBox::critical(0, "无法连接网络数据库!", netdb.lastError().databaseText(), QMessageBox::Cancel); return;
} QSqlQuery netquery(netdb); bool rtn=netquery.exec("select ttmc from tttzd"); if(!rtn) { QMessageBox::critical(0, "检索网络库错误!", netdb.lastError().databaseText(), QMessageBox::Cancel); return; } QMessageBox::critical(0, "wait wl!", netdb.lastError().databaseText(), QMessageBox::Cancel);
//netdb.removeDatabase("netdb");
netdb=QSqlDatabase::addDatabase("QODBC","netdb1"); netdb.setDatabaseName(QString("DRIVER={SQL SERVER};" "SERVER=%1;" //服务器名称 "DATABASE=%2;"//数据库名 "UID=%3;" //登录名 "PWD=%4;" //密码 ).arg(netservername) .arg(netdatabase) .arg(netlogid) .arg(netlogpassword) );
if ( !netdb.open()) { QMessageBox::critical(0, "无法连接网络库!", netdb.lastError().databaseText(), QMessageBox::Cancel); return; }
//QSqlQuery netquery1(netdb); rtn=netquery.exec("select ttbh from tttzd"); if(!rtn) { QMessageBox::critical(0, "检索网络库错误!", netdb.lastError().databaseText(), QMessageBox::Cancel); return; } netquery.next(); QString ls_bh=netquery.value(0).toString(); QString ls_mc=ls_bh;
|
|