8

qtを使用してSQLServer2008に接続しようとしています...これを実行しています:

 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();

qtsql4また、 libsを追加しましqtsqld4たが、データベースを開くことができないというエラーが発生するという問題があります... 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 に答える