Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to connect to SQL Server 2008 with qt?

I am trying to connect to SQL Server 2008 with qt ... I am doing this :

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

I have also added qtsql4 and qtsqld4 libs but now the problem is I am getting an error that database can't be open ... I am very new in qt I don't know how to do this? So any help on how to connect to the database what more should I add or where I am wrong ?

like image 654
Arindam Das Avatar asked Jan 28 '13 05:01

Arindam Das


Video Answer


2 Answers

After trying for so much time, I finally managed to get this to work ... here's what I did :

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();
like image 154
Arindam Das Avatar answered Oct 17 '22 21:10

Arindam Das


This could be another one:

//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")
like image 1
antonio Avatar answered Oct 17 '22 21:10

antonio