crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V  < 1 2 3 >  
Ответить в данную темуНачать новую тему
> Paradox и Qt, Qt 4.3.2
Litkevich Yuriy
  опции профиля:
сообщение 18.11.2010, 2:38
Сообщение #11


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(AD @ 18.11.2010, 2:07) *
что с Paradox я сталкиваюсь впервые!
про парадокс уже сказали - через ODBC.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 22.11.2010, 17:41
Сообщение #12


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Сделал следующую функцию подключения:
/// Глобальные переменные
QSqlDatabase db;

/// Функция для создания соединения с базой данных
bool createConnection(QString odbc_name)
{
    if(db.isOpen()) db.close();

    db = QSqlDatabase::addDatabase("QODBC");
    db.setDatabaseName(odbc_name);

    if(!db.open())
    {
        QSqlError error = db.lastError();
        QMessageBox msg(QMessageBox::Critical, "Connections", error.text(), QMessageBox::Ok, 0);
        msg.exec();
        return false;
    }
    return true;
}

/// Вызов
bool is_conn = createConnection("azt");    /// noдключенue k БД


И есть два файлика reg, которые я заношу в реестр. Вот они:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\azt]
"Driver"="C:\\WINDOWS\\system32\\odbcjt32.dll"

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
"azt"="Microsoft Paradox Driver (*.db )"

Мне выдается сообщение "Unable to connect QODBC3". Как исправить ошибку?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 22.11.2010, 18:01
Сообщение #13


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


connectionstrings
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 22.11.2010, 18:12
Сообщение #14


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(panter_dsd @ 22.11.2010, 18:01) *

А что это за строчки? Это в программу надо вставить или в реестр?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 23.11.2010, 0:06
Сообщение #15


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Я действительно буду благодарен за помощь. Видимо, я чего-то недопонимаю. Но такие ответы в одну строку мне тяжело расшифровать. Итак. В plugins/sqldrivers у меня есть lib файл qodbc.lib, который я подключил к проекту. Создал указанную функцию соединения и сделал записи в реестр, что указал. Что именно означают строчки по данной ссылке? Я их попробовал записать в реестр. Не помогло!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 23.11.2010, 0:24
Сообщение #16


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


db.setDatabaseName ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\myDb;Extended Properties=Paradox 5.x;");
c:\\myDb заменяешь на нужное тебе. В реестр ничего писать не нужно.
Если данная строка не подойдет, попробуй другие с того сайта.
Если не получится, выложи куда-нибудь свою базу, попробую к ней законнектиться.

Сообщение отредактировал panter_dsd - 23.11.2010, 0:25
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 23.11.2010, 11:05
Сообщение #17


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(panter_dsd @ 23.11.2010, 0:24) *
db.setDatabaseName ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\myDb;Extended Properties=Paradox 5.x;");
c:\\myDb заменяешь на нужное тебе. В реестр ничего писать не нужно.
Если данная строка не подойдет, попробуй другие с того сайта.
Если не получится, выложи куда-нибудь свою базу, попробую к ней законнектиться.

Хм.... Через программу не удалось, он мне пишет, что слишком длинное имя БД. А вообще, это настройки ODBC, которые и помещаются в реестр.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 23.11.2010, 11:17
Сообщение #18


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


Выложи куда-нибудь БД, я поковыряюсь.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 23.11.2010, 11:18
Сообщение #19


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(panter_dsd @ 23.11.2010, 11:17) *
Выложи куда-нибудь БД, я поковыряюсь.

Дело в том, что ее нет пока. Она будет программой создаваться. Нет ни одной таблички пока что.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 23.11.2010, 11:23
Сообщение #20


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


А путь какой указываешь? Уверен, что одбц позволяет создавать базу?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

3 страниц V  < 1 2 3 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.4.2024, 10:19