Russian Qt Forum
Сентябрь 30, 2024, 16:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QT4.5 & MSSQL Server 2000  (Прочитано 3911 раз)
sharkerr
Гость
« : Март 31, 2009, 07:32 »

Товарищи помогите соединить нормально qt и sqlserver, что то не получается соединится с базой все время сыпятся какие то ошибки. Не у кого нет подробного руководства как это делать?
Делаю следующее:
Код:
#include <QApplication>
#include <QtSQL>
#include <QMessageBox>
#include <Qwidget>

static bool createConnected()
{
    QSqlDatabase db = QSqlDatabase::addDatabase("QODBC3");
    db.setHostName("local");
    db.setDatabaseName("Phone");
    db.setUserName("sa");
    db.setPassword("sa");
    if (!db.open())
    {
       qDebug()<<"Error -> "<<db.lastError();
        return false;
    }
    qDebug()<<"OK";
  return true;
}

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    //QWidget* window = new QWidget;

    if (!createConnected())
    {
        return 1;
    }
    //window->show();
    return a.exec();
}

Результат:
Код:
C:/qt(project)/db_odbc/debug/db_odbc.exe exited with code 1


warning: while parsing target library list: not well-formed (invalid token)
warning: Temporarily disabling breakpoints for unloaded shared library "C:\\WINDOWS\\system32\\msvcrt.dll"
warning: while parsing target library list: not well-formed (invalid token)
warning: while parsing target library list: not well-formed (invalid token)
warning: while parsing target library list: not well-formed (invalid token)
warning: while parsing target library list: not well-formed (invalid token)
warning: while parsing target library list: not well-formed (invalid token)
warning: while parsing target library list: not well-formed (invalid token)
warning: while parsing target library list: not well-formed (invalid token)
warning: Error ->  QSqlError(0, "QODBC3: Unable to connect", " [Microsoft][\304\350\361\357\345\362\367\345\360 \344\360\340\351\342\345\360\356\342 ODBC] \310\361\362\356\367\355\350\352 \344\340\355\355\373\365 \355\345 \355\340\351\344\345\355 \350 \355\345 \363\352\340\347\340\355 \344\360\340\351\342\345\360, \350\361\357\356\353\374\347\363\345\354\373\351 \357\356 \363\354\356\353\367\340\355\350\376")
warning: while parsing target library list: not well-formed (invalid token)
Что я не так делаю?  Непонимающий
Записан
agok
Гость
« Ответ #1 : Март 31, 2009, 08:35 »

Может быть ты не правильно указываешь параметры соединения, в помощи есть, например, такой код
Код:
 db = QSqlDatabase::addDatabase("QODBC");
 db.setDatabaseName("DRIVER={Microsoft Access Driver (*.mdb)};FIL={MS Access};DBQ=myaccessfile.mdb");
 if (db.open()) {
     // success!
 }
Записан
crossly
Гость
« Ответ #2 : Март 31, 2009, 10:00 »

при использовании ODBC-драйвера... в setDatabaseName указывается имя источника данных ODBC или строка подключения... как в примере выше.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.224 секунд. Запросов: 20.