8

我正在尝试使用 qt 连接到 SQL Server 2008 ...我正在这样做:

 QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");

 db.setHostName("ITPL_PC1\\SQLEXPRESS");
 db.setDatabaseName("Test");
  db.setUserName("sa");
  db.setPassword("insforia");
  bool ok = db.open();

  //query

  db.close();

我还添加了qtsql4qtsqld4库,但现在的问题是我收到一个错误,即数据库无法打开......我在 qt 中很新,我不知道该怎么做?那么关于如何连接到数据库的任何帮助我应该添加什么或者我错了?

4

2 回答 2

11

在尝试了这么多时间之后,我终于设法让它发挥作用......这就是我所做的:

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC3");

db.setDatabaseName("DRIVER={SQL Server};Server=ITPL_PC1;Database=Test;Uid=sa;Port=1433;Pwd=*******;WSID=.");

db.open();

QSqlQueryModel *model = new QSqlQueryModel;

QString query = "insert into qttable(PID) values('ARINDAM')";
model->setQuery(query, db);

db.close();
于 2013-01-29T06:53:08.070 回答
1

这可能是另一个:

//2005  
db.setDatabaseName(DRIVER={SQL Server};SERVER=localhost\\SQLExpress;DATABASE=secundaria;UID=sa;PWD=contraseña;WSID=.;Trusted_connection=yes)

//2008
db.setDatabaseName("DRIVER={SQL Server Native Client 10.0};SERVER=localhost\\SQLExpress;DATABASE=myDbName;UID=user;PWD=userPwd;WSID=.;Trusted_connection=yes")

//2012
db.setDatabaseName("DRIVER={SQL Server Native Client 11.0};SERVER=localhost\\SQLExpress;DATABASE=myDbName;UID=user;PWD=userPwd;WSID=.;Trusted_connection=yes")
于 2015-11-05T23:07:58.837 回答