Подключение к базе данных на виртуальной машине (QODBC) |
Здравствуйте, гость ( Вход | Регистрация )
Подключение к базе данных на виртуальной машине (QODBC) |
Turbo |
12.3.2012, 20:17
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 4 Регистрация: 12.3.2012 Пользователь №: 3260 Спасибо сказали: 0 раз(а) Репутация: 0 |
Всем доброго времени суток!
Пытаюсь подключиться к базе данных на виртуальной машине таким образом #include "mainwindow.h" #include "ui_mainwindow.h" #include <C:\QtSDK\Desktop\Qt\4.8.0\mingw\include\QtSql\qsqldatabase.h> #include "QSqlError" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_pushButton_clicked(){ db=QSqlDatabase::addDatabase("QODBC"); db.setHostName(ui->lineEdit->text()); db.setDatabaseName(ui->lineEdit_2->text()); db.setUserName(ui->lineEdit_3->text()); db.setPassword(ui->lineEdit_4->text()); db.setPort(1433); db.setConnectOptions("SQL_ATTR_ACCESS_MODE=SQL_MODE_READ_ONLY;SQL_ATTR_TRACE=SQL_OPT_TRACE_ON"); if(!db.open()){ qDebug() << "Can't open DB: " << db.lastError().text(); } else { ui->lineEdit_5->setText("Good"); } db.close(); } Выдается ошибка: Can't open DB: "[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию QODBC3: Unable to connect" Что я делаю не так? |
|
|
Алексей1153 |
12.3.2012, 20:41
Сообщение
#2
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
|
|
|
Turbo |
12.3.2012, 21:41
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 4 Регистрация: 12.3.2012 Пользователь №: 3260 Спасибо сказали: 0 раз(а) Репутация: 0 |
Спасибо, я это изменил, но разницы никакой не заметил, мою проблему это не решило
|
|
|
zloiia |
12.3.2012, 23:31
Сообщение
#4
|
Студент Группа: Участник Сообщений: 25 Регистрация: 5.5.2011 Пользователь №: 2655 Спасибо сказали: 5 раз(а) Репутация: 0 |
Всем доброго времени суток! Пытаюсь подключиться к базе данных на виртуальной машине таким образом #include "mainwindow.h" #include "ui_mainwindow.h" #include <C:\QtSDK\Desktop\Qt\4.8.0\mingw\include\QtSql\qsqldatabase.h> #include "QSqlError" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_pushButton_clicked(){ db=QSqlDatabase::addDatabase("QODBC"); db.setHostName(ui->lineEdit->text()); db.setDatabaseName(ui->lineEdit_2->text()); db.setUserName(ui->lineEdit_3->text()); db.setPassword(ui->lineEdit_4->text()); db.setPort(1433); db.setConnectOptions("SQL_ATTR_ACCESS_MODE=SQL_MODE_READ_ONLY;SQL_ATTR_TRACE=SQL_OPT_TRACE_ON"); if(!db.open()){ qDebug() << "Can't open DB: " << db.lastError().text(); } else { ui->lineEdit_5->setText("Good"); } db.close(); } Выдается ошибка: Can't open DB: "[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию QODBC3: Unable to connect" Что я делаю не так? Ну то что с ходу бросилось в глаза это то что для ODBC не указан драйвер коннектора. Я тоже бился головой о проблему невозможности подключиться просто по DNS имени источника данных. Приходилось все-же указывать имя коннектора. Вот можно почитать про синтаксис строки настроек ODBC http://msdn.microsoft.com/ru-ru/library/sy...tionstring.aspx http://www.connectionstrings.com/mysql Хотя вот мне коллеги еще посоветовали посмотреть на такое http://www.easysoft.com/developer/libraries/qt/example.cpp |
|
|
Алексей1153 |
13.3.2012, 7:35
Сообщение
#5
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
|
|
|
Turbo |
13.3.2012, 19:38
Сообщение
#6
|
Новичок Группа: Новичок Сообщений: 4 Регистрация: 12.3.2012 Пользователь №: 3260 Спасибо сказали: 0 раз(а) Репутация: 0 |
zloiia, спасибо большое за ссылки, только я там ничего не понял.............если не сложно можешь подробно объяснить что где и как делать?
Driver={MySQL ODBC 3.51 Driver};Server=myServerAddress;Database=myDataBase;User=myUsername; Password=myPassword;Option=3; вот например с этим что делать? |
|
|
PAFOS |
14.3.2012, 11:58
Сообщение
#7
|
Активный участник Группа: Участник Сообщений: 258 Регистрация: 27.12.2010 Из: Дмитров Пользователь №: 2309 Спасибо сказали: 29 раз(а) Репутация: 8 |
наверное
Сообщение отредактировал PAFOS - 14.3.2012, 11:59 |
|
|
Turbo |
14.3.2012, 19:41
Сообщение
#8
|
Новичок Группа: Новичок Сообщений: 4 Регистрация: 12.3.2012 Пользователь №: 3260 Спасибо сказали: 0 раз(а) Репутация: 0 |
|
|
|
Гость_freedomhhe_* |
16.3.2012, 20:13
Сообщение
#9
|
Гости |
Удалите пожалуйста.
|
|
|
Текстовая версия | Сейчас: 30.11.2024, 13:02 |