LINUX.ORG.RU

Qt 4.4+ODBC+MSSQL


0

0

Раньше с модулем Qt SQL никогда не работал (так как предпочитаю Java для работы с базами) Захотелось написать небольшую прогамку, работающую c сервером MS SQL (не моя прихоть). Так вот настроил я ODBC так

cat /etc/odbc.ini

[ODBC Data Sources][1]
MSSQL = MSSQL Server

[MSSQL]
Driver = /usr/lib/odbc/libtdsodbc.so
Description = MSSQL Server
Server = 192.168.9.2
Database = test
Port = 1433
TDS_Version = 8.0

[Default]
Driver = /usr/lib/odbc/libtdsodbc.so

Вот кусок кода:

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setHostName("");
db.setDatabaseName("mssql");
bool ok = db.open("test","test");
qDebug() << ok;

if (!ok) return;

QStringList list = db.tables();

for (int i = 0; i < list.size(); ++i){
qDebug() << list[i];
}



QTableView *view = qFindChild<QTableView*>(this,"tableView");
QSqlTableModel model;
model.setTable("test_table");
model.select();
model.setEditStrategy(QSqlTableModel::OnFieldChange);
view->setModel(&model);
view->show();

Вместо списка таблиц какой-то мусор. В QTableView пусто. isql отлично работает. Что я сделал не так?

★★
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.