Создаю небольшое приложение, работающее с БД.
До этого как то писал под линукс по работе с PSQL и вроде все было идеально, но сейчас потребовалось написать под MS SQL Server 2005.
Поставил нужные дрова, с горем пополам смог написать соединение с сервером (так, как делал с PSQL - не вышло, требовало указать драйвер и прочее):
QString connectionTemplate = "DRIVER={SQL SERVER};SERVER=%1;DATABASE=%2;";
QString connectionString = connectionTemplate.arg("serverhostname").arg("databsename");
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC", "connecti");
db.setDatabaseName(connectionString);
db.setUserName("eXeLe");
db.setPassword("123123123");
bool ok = db.open();
В хэдере прописал:
в cpp-шнике пишу:
query=new QSqlQuery(db);
query->exec("insert into table_name (name) values (123123123)");
Завязываю все на кнопку, запускаю, жму кнопку - ноль реакции.
То что кнопка успешно нажимается и указанный код выполняется - сомнений нет.
В самой базе смотрел через sp_who - коннект от приложения устанавливается.
Однако указанное в exec - не выполняется. Сначала пробовал делать select и его обрабатывать - ничего не обрабатывалось, потом уже перешел просто на insert. В базу ничего не вносится. Тот же запрос, выполненные в SSMS - выполняется успешно.
В чем еще могут быть проблемы?