QT与数据库的问题~请高手解决~
在教程中(如下所示),用的数据库是SQLITE。但是如果我想用SQL SERVER。那改如何修改程序呢??
#ifndef DATABASE_H
#define DATABASE_H
#include <QSqlDatabase>
#include <QSqlQuery>
static bool createConnection()
{
QSqlDatabase db = QSqlDatabase::addDatabase(“QSQLITE”);
db.setDatabaseName(“database.db”);
if(!db.open()) return false;
QSqlQuery query;
query.exec(“create table student (id int primary key, name vchar)”);
query.exec(“insert into student values (0,’yafei0′)”);
query.exec(“insert into student values (1,’yafei1′)”);
query.exec(“insert into student values (2,’yafei2′)”);
return true; }
#endif
// DATABASE_H 这里我们使用了db.setDatabaseName(“database.db”); ,我们没有再使用以前的内存数据库,而是使用了真实的文件,这样后面对数据库进行的操作就能保存下来了。
[解决办法]
SQL server应该是用QODBC插件驱动(好像Qt自带的有sqlite和ODBC)
SQL server的访问要设置database server name、port等。
也就是db.open之前调用设置好用户名、密码、端口、数据表名。
网上百度有一种是设置dsn的一长串。(我以前也弄过,有格式的一串)。
然后是open。
对于数据库的其他操作(增删改查)是一样的。