QT 操作SQLSERVER 连接成功,不能执行SQL语句
我在终端用tsql测试是成功的。但是在qt下qDebug()<<QSqlDatabase::drivers();
QSqlDatabase db=QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName(QString("DRIVER={FreeTDS};"
"SERVER=%1;" //服务器名称
"port=%2"
"DATABASE=%3;"//数据库.arg("密码")名
"UID=%4;" //登录名
"PWD=%45;" //密码
).arg("192.168.1.253")
.arg(1433)
.arg("ncpjgSys")
.arg("sa")
.arg("longzhou@2014?")
);//tsql -H 112.232.114.214 -p 1433 -U sa -P longzhou@2014? -D ncpjgSys
if(!db.open())
{
qDebug("=== %s",qPrintable(db.lastError().text()));
}else
{
qDebug("==== ok");
}
QSqlQuery query(db);
// QDateTime time = QDateTime::currentDateTime();//获取系统现在的时间
// QString tm = time.toString("yyyy-MM-dd hh:mm:ss"); //设置显示格式
// QString slct = tr("insert into table1 values('10.5','2.0','2014-11-12 16:01:15','keke')");
// qDebug()<<slct;
// if(!query.exec(slct))
// qDebug("error%s",qPrintable(db.lastError().text()));
// else
// qDebug("sucess");
QString sql="insert into table1 values('10.5','2.0','2014-11-12 16:01:15','keke')";
qDebug()<<sql;
query.prepare(sql);
if(!query.exec())
qDebug("error== %s",qPrintable(db.lastError().text()));
打印信息:("QSQLITE", "QODBC3", "QODBC", "QPSQL7", "QPSQL")
==== ok
"insert into table1 values('10.5','2.0','2014-11-12 16:01:15','keke')"
QODBCResult::exec: Unable to execute statement: "[FreeTDS][SQL Server]Invalid object name 'table1'."
error==
求解决啊