OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 29 Март, 2024 17:54

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 19 ] 
Автор Сообщение
 Заголовок сообщения: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 07:05 

Зарегистрирован: Понедельник, 25 Февраль, 2008 08:42
Сообщения: 125
Решил попробовать написать для себя небольшую программу.
Обычно я их пишу на Delphi.
Уперся в то, как подключить базы данных.
Там я тупо механически завожу новую через DataBase Desktop. Саму базу описываю через bdeadmin. В общем с Delphi всё понятно.
Но в BlackBox я не знаю с чего начинать. Как подключить базу?
Например, у меня через bdeadmin описана база “balans”. Есть таблица – param.db.
В SQL/Browser описываю
Database: balans
Driver: SqlOdbc3
Statement: select * from param.db
На Execute ответ: «ODBS Error [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию»
И как то не могу найти в описании, как правильно это сделать.
Покажите, как сделать или где точно прочитать, поскольку я так и не понял, читая описания BlackBox`а.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 07:22 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Источник данных ODBC не создан.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 09:01 

Зарегистрирован: Понедельник, 25 Февраль, 2008 08:42
Сообщения: 125
Я понимаю, что что-то не так, но для меня ваш ответ как на китайском.
Как создать источник данных?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 09:37 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1428
Панель управления/Администрирование/Источники данных (ODBC)/Вкладка «Системный DSN»/Справка


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 12:22 

Зарегистрирован: Понедельник, 25 Февраль, 2008 08:42
Сообщения: 125
Спасибо. Но не справился.
Делаю вроде как положено, читаю но ...

Системный DSN
Имя: abc Драйвер: Driver do Microsoft Paradox (*.db)

Установка драйвера для ODBC Paradox
Имя источника данных: abc
Версия: 5.x
Каталог: C:\TMP\3

В этом каталоге сидит "test.db" .

Соответсвенно в SQL/Browser
Database: abc
Driver: SqlOdbc3
Statement: select * from test.db

А мне в ответ: ODBC Error
[Mictosoft][Driver ODBC Paradox] ОБъект test.db не найден ядром базы данных Microsoft Jet. Проверьте существование объекта и правильность имени и пути.

Чего я опять не знаю или не правильно делаю?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 13:12 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1428
Кажется, все правильно. А другим способом добраться получается. Например, через SQL Explorer или MS Query?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 14:08 

Зарегистрирован: Понедельник, 25 Февраль, 2008 08:42
Сообщения: 125
Trurl писал(а):
Кажется, все правильно. А другим способом добраться получается. Например, через SQL Explorer или MS Query?

Ещё бы знать, как это делать!

Я запустил Access, оттуда всё открывается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 14:12 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
ain писал(а):
Statement: select * from test.db
Дык вроде оператор select применяется к таблицам базы данных, а не к самим базам или файлам. :) Попробуйте select * from имя таблицы из Вашей test.db


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 14:19 

Зарегистрирован: Понедельник, 25 Февраль, 2008 08:42
Сообщения: 125
Евгений Темиргалеев писал(а):
ain писал(а):
Statement: select * from test.db
Дык вроде оператор select применяется к таблицам базы данных, а не к самим базам или файлам. :) Попробуйте select * from имя таблицы из Вашей test.db

Это же Paradox, там каждая таблица базы данных в отдельном файле.
Или я чего-то не знаю?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 14:26 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
ain писал(а):
Это же Paradox, там каждая таблица базы данных в отдельном файле.
Я вот этого не знал :)

С такими базами не работал никогда. Но разве имя таблицы в базе совпадает с именем файла в котором она хранится?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 14:27 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1428
ain писал(а):
Ещё бы знать, как это делать!

Я запустил Access, оттуда всё открывается.


Access работает не через ODBC, а напрямую.
Вариант 1. Открываем SQL Explorer. Находим в Databases abc и пробуем войти.
Вариант 2. В Excel: Данные/Импорт внешних данных/Создать запрос.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 15:10 

Зарегистрирован: Понедельник, 25 Февраль, 2008 08:42
Сообщения: 125
Кстати, когда пишу
select * from c:\TMP\3\test.db
То ругается так: Внешняя таблица не имеет предполагаемый формат.
Таблица версии 5.0.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Понедельник, 31 Март, 2008 15:26 

Зарегистрирован: Понедельник, 25 Февраль, 2008 08:42
Сообщения: 125
Евгений Темиргалеев писал(а):
ain писал(а):
Это же Paradox, там каждая таблица базы данных в отдельном файле.
Я вот этого не знал :)

С такими базами не работал никогда. Но разве имя таблицы в базе совпадает с именем файла в котором она хранится?

Да, это наследие прошлого: Парадокс, Дибейс, Фокспро. Тут базой данных была папка с кучей таблиц.
Мало того, что каждая таблица в своем файле и «имя таблицы» = «имя файла», но и все индексы и прочее так же отдельными файлами, с тем же именем, но с другим расширением.

Trurl писал(а):
ain писал(а):
Ещё бы знать, как это делать!

Я запустил Access, оттуда всё открывается.


Access работает не через ODBC, а напрямую.
Вариант 1. Открываем SQL Explorer. Находим в Databases abc и пробуем войти.
Вариант 2. В Excel: Данные/Импорт внешних данных/Создать запрос.

Немедленно проверил.
Запустил в Excel`е создание запроса, там среди списка источников данных обнаружил свой созданный в DSN свои источник – “abc”.
Кликнул по нему, поучил список всех таблиц в директории, выбрал таблицу и т.д.
Excel сформировал запрос и вставил данные.
Так что с этой стороны всё в порядке.

Что же ещё не так?

Нашёл!!!!

Надо было выйти из BlackBox`а.
Вышел, зашел и он всё увидел.

Большое спасибо всем за помощь.
Сам бы я всё равно не сумел добраться до таблиц.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Пятница, 03 Октябрь, 2008 21:27 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
Решил я поработать с БД из ББ. Но возникли некоторые проблемы. Вот они:
Код:
ODBC Error
 [Microsoft][ODBC Text Driver]Optional feature not implemented

ODBC Error
 [Microsoft][ODBC Text Driver]Invalid attribute/option identifier

ODBC Error
 [Microsoft][ODBC Text Driver]Cannot update. Database or object is read-only
Это я пытался использовать SqlBrowser.

Есть ли драйвер для прямого подключание к MySQL?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Пятница, 03 Октябрь, 2008 22:06 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Используйте драйвер Odbc3. Проблем с работой через него с сервером MySQL не наблюдалось. Драйвер MySQL-ODBC нужно использовать 3.51.*. 5-я версия у них сырая до безобразия, причём ситуация с ней не меняется уже несколько лет (потому и 3.51 не убирают). На всякий случай: речь идёт о версиях драйвера, а не СУБД.

Драйвера прямого подключения для подсистемы Sql нет (до драйвера что-то руки так и не дошли). Есть только заголовочный модуль к libmysql.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Суббота, 04 Октябрь, 2008 07:31 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Точно-точно. Я недавно поставил MySQL Community Server (5.0.67), и заодно решил опробовать объявленный коннектор ODBC 5.0 (он у них как Generally Available (GA) release for production use). Нифига с коннектором не вышло, отчего даже возникла мысль - а не придётся ли перетачивать ящиковый Odbc3...

Прямое подключение через libmysql тоже хочется, чтоб меньше было возни с настройками на клиентской стороне. В принципе, я задумал поковыряться в libmysql, как только у нас тут всё устаканится - месяца через 3 :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Суббота, 04 Октябрь, 2008 10:24 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Иван Кузьмицкий писал(а):
Прямое подключение через libmysql тоже хочется, чтоб меньше было возни с настройками на клиентской стороне. В принципе, я задумал поковыряться в libmysql, как только у нас тут всё устаканится - месяца через 3 :)

В принципе, вылизанный модуль для libmysql я могу дать. Хорошо бы кто, на досуге, на его основе, драйвер бы написал для подсистемы Sql. Это не сложно, просто, как обычно, нужно время повозиться.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Суббота, 04 Октябрь, 2008 11:14 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Это, случайно, не "http://forum.oberoncore.ru/files/363/libmysql.rar" ? Если так, то оно уже у меня есть - лежит и ждёт :)

Я по-любому буду этим заниматься, только насчёт сроков не могу ничего сказать. Как сделается, так и сделается...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Подключение базы
СообщениеДобавлено: Суббота, 04 Октябрь, 2008 12:21 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Иван Кузьмицкий писал(а):
Это, случайно, не "http://forum.oberoncore.ru/files/363/libmysql.rar" ? Если так, то оно уже у меня есть - лежит и ждёт :)

Не... это, если я не ошибаюсь, начальный вариант, который студент делал. Там мусора много, и ошибки есть...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB