powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / QT + MSSQL
7 сообщений из 7, страница 1 из 1
QT + MSSQL
    #35005071
КУТист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Учу QT. Коннекчусь к MSSQL таким образом:
Код: plaintext
1.
2.
QSqlDatabase db = QSqlDatabase::addDatabase( "QODBC3" );
db.setDatabaseName( "Driver={SQL Native Client};Server=my_comp_name;Database=db_name;Trusted_Connection=yes;" ); 
на что получаю
error
[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified QODBC3: Unable to connect
причем строка рабочая (из .NET работает, например).
MSSQL 2005, WS2003EEx64, QT 4.3.0
...
Рейтинг: 0 / 0
QT + MSSQL
    #35005340
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это ошибка в QODBC. Тролтеки уже исправили ее и обещают выпустить патч в люди в версии 4.4.0.
А пока, просто напиши в строке коннекта 'DRIVER=' большими буквами.
...
Рейтинг: 0 / 0
QT + MSSQL
    #35005486
КУТист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, заработало!
...
Рейтинг: 0 / 0
QT + MSSQL
    #35005567
КУТист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А вот к примеру такой код (это из книжки Шлее по QT4)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
db.setDatabaseName( "DRIVER={SQL Native Client};Server=host;Database=dbname;Trusted_Connection=yes;" );
    if (!db.open())
    {
         //...
    }
    QTableView view;
    QSqlTableModel model;
    model.setTable("Prize");
    model.select();
    model.setEditStrategy(QSqlTableModel::OnFieldChange);
    view.setModel(&model);
    view.show();
Все чудесно, только что делать, если, например, мне нужно одновременно открыть 2 базы в которых есть таблицы с одинаковым именем? Как то я уже привык, что есть явные объекты connection через которые все и тянется.
...
Рейтинг: 0 / 0
QT + MSSQL
    #35005797
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КУТистВсе чудесно, только что делать, если, например, мне нужно одновременно открыть 2 базы в которых есть таблицы с одинаковым именем? Как то я уже привык, что есть явные объекты connection через которые все и тянется.Ну и открывай два коннекта, что тебя смущает?
Код: plaintext
1.
2.
3.
4.
QSqlDatabase db1 = QSqlDatabase::addDatabase( "QODBC3" );
QSqlDatabase db2 = QSqlDatabase::addDatabase( "QODBC3" );
db1.setDatabaseName(....);
db2.setDatabaseName(....);
etc
...
Рейтинг: 0 / 0
QT + MSSQL
    #35005803
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ааа.... понял, ты забыл прочитать документацию :) В конструкторе QSqlTableModel и подобных надо указывать какуй из открытых коннектов использовать. Что-то типа:
Код: plaintext
QSqlTableModel model(this, db1);
...
Рейтинг: 0 / 0
QT + MSSQL
    #35005934
КУТист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, пошел читать. =)
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / QT + MSSQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]