![]() |
Модераторы: Akella |
![]() ![]() ![]() |
|
Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: нет Всего: 6 |
Создавал спокойно базы данных в Access, делал там таблички всякие и писал клиентскую часть на делфи, а работал я с этими бд через ADO. Теперь решил освоить FireBird Embedded (бесплатна для коммерческого использования - если не ошибаюсь). Скачал версию Firebird-2.1.1.17910-0_Win32_embed
Вопросы: 1)Какие dll положить рядом с exe. 2)И потом - через какую программку можно создавать саму бд? Т.е. я вот раньше через Access создавал, иногда программным способом, а теперь через что можно? Или нужно программным способом теперь создавать? |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
При чём здесь Delphi?
![]() Добавлено через 1 минуту и 2 секунды 1. Все. Как минимум прочти текст лицензии. 2. А IBExpert уже отменили? |
|||
|
||||
Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: нет Всего: 6 |
уважаемый Akella, я не знаю причем тут делфи. Смысл такого неадекватного вопроса?
Если ты не понял: я вообще не про делфи спрашиваю. 1)Насчет текста лицензии прочел, это помогло действительно. На этом спасибо. Как я понял нужны следующие файлы в папку к моему приложению: fbembed.dll, icudt30.dll, icuin30.dll and icuuc30.dll. Затем переименовать fbembed.dll в fbclient.dll или в gds32.dll. Но так и не понял для чего нужны firebird.msg и firebird.conf? 2) только в IBExpert можно создавать? или есть |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
Если не знаешь, то узнай у себя, зачем вопрос по Firebird задаёшь в разделе Delphi? ![]() Добавлено через 25 секунд я-то понял, а ты понял? Добавлено через 1 минуту и 2 секунды нет Добавлено через 5 минут и 40 секунд есть, конечно: ISTool - родная утилита, есть BlazeTop, Firebird Code Factory, Firebird Maestro Добавлено через 6 минут и 56 секунд
Зачем переименовывать? Можно просто в параметрах подключения указать библиотеку доступа. |
|||
|
||||
Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: нет Всего: 6 |
извиняюсь. сглупил.
|
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
-------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
Кстати, IBX в Д2009 уже не совсем поддерживает FB.
|
|||
|
||||
holodnaya |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 30.7.2008 Репутация: нет Всего: нет |
Akella, можешь описать, как именно это сделать? Сейчас у меня тоже стоит вопрос по пенреносу базы на дургой комп. Перенесла все указанные здесь dll в ту же папочку, где находится сама программа (программа и база, я так понимаю, могут находиться и не в одном месте). После всего проделанного получаю такую ошибку
Что нужно сделать для её устранения? |
||||
|
|||||
Gluttton |
|
|||
![]() Начинающий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1170 Регистрация: 28.8.2008 Где: Феодосия Репутация: 7 Всего: 54 |
holodnaya, как вариант в клиентском приложении в строке подлкючения не изменен тип сервера...
-------------------- Слава Україні! |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
holodnaya, мало информации. Я не телепат.
|
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
Компоненты доступа, строка подключения, версия сервера.
Добавлено через 2 минуты и 34 секунды Это означает, что у тебя проблемы с сетью Если ты подключаешь локально, то убери localhost: из строки подключения Добавлено через 3 минуты У тебя хоть firebird установлен? |
|||
|
||||
holodnaya |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 30.7.2008 Репутация: нет Всего: нет |
Использую FireBird 2.1.3, из делфи обращаюсь к базе через стандартные компоненты IBX.
нет, не установлен. Только не смейся. Прочитала тему, где THandle советовался по поводу выбора СУБД. После прочтения у меня создалось впечатление, что FireBird можно не устанавливать на том компе, где будет прога и сама база (достаточно только кинуть пару dll). Сейчас перечитала, и четкого убеждения в этом нет... Возможно, тогда у меня сложилось ошибочное мнение. Получается, что и на компьютер, куда переносим базу, нужно устанавливать FireBird? И просто копированием нескольких библитек не обойтись? Это сообщение отредактировал(а) holodnaya - 18.11.2009, 23:23 |
|||
|
||||
Gluttton |
|
||||||
![]() Начинающий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1170 Регистрация: 28.8.2008 Где: Феодосия Репутация: 7 Всего: 54 |
Не обязательно. Можно и обойтись. Firebird бывает трех типов: - Firebird Super Server; - Firebird Classic Server; - Firebird Embedded. Первые два требуют инсталяции, а для работы с третьим достаточно рядом с испольняимым файлом поместить необходимые компоненты (теоретически файлов должно быть несколько, сейчас уже не вспомню, где об этом читал, но на практике, достаточно и одной библиотеки).
Источник. А теперь прокоментирую свой предыдущий пост:
Не знаю как в Delphi, но в C# для подключения к БД используется строка подключения, в которой среди прочего указывается и тип сервера (точно не скажу, но помоему 0 - Classic, Super, 1 - Embedded). Так вот, если я например создаю программу-клиента для работы с БД и использую Classic, а потом вдруг хочу свою программу заставить работать на другом ПК с Embedded, то без внесения соответствующих изменений в строку подключения у меня ничего не выйдет! Про строки подключения. Почитал, что там пишут, по ходу тип сервера используется только при использовании NET-провайдера... Это сообщение отредактировал(а) Gluttton - 19.11.2009, 00:10 -------------------- Слава Україні! |
||||||
|
|||||||
Gluttton |
|
|||
![]() Начинающий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1170 Регистрация: 28.8.2008 Где: Феодосия Репутация: 7 Всего: 54 |
В googl'e набираешь Firebird Embedded, переходишь по первым ссылкам и качаешь Embedded версию...
Распаковываешь, находишь ..\doc\README_embedded.txt и читаешь ![]() А если с английским туго, то поищи - googl на запросы Firebird Embedded Delphi (на русском языке) откликается только так ![]() Добавлено через 2 минуты и 14 секунд Если лень разбираться ![]() Добавлено через 9 минут и 32 секунды Кстати вот, что там пишут:
Т.е. Akella про localhost очень правильно сказал... -------------------- Слава Україні! |
|||
|
||||
holodnaya |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 30.7.2008 Репутация: нет Всего: нет |
Как раз это я и пытаюсь сделать. Может, проще тогда и у себя переустановить на Embedded? Gluttton, спасибо за содержательные ответы. Обязательно прочитаю. ![]() Мне интересно и я разберусь... просто для себя. Это сообщение отредактировал(а) holodnaya - 19.11.2009, 00:00 |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
![]() Добавлено через 43 секунды - У меня машина не едет. Машина без двигателя. Почему не едет, в чём может быть проблема? ![]() Добавлено через 5 минут и 28 секунд Начнём с того, что нельзя подключаться к встраиваемой версии птички через сеть, как это делаешь ты
Весьма затруднительно будет использовать IBX и встраиваемую версию сервера. Хотя.... можно, конечно, закинуть в Windows\system32\ все файлы Firebird Embedded и затем переименовать embedd.dll в gds32.dll. Зачем переименовывать? Просто в IBX нет возможности явно указать имя библиотеки доступа, а по сему в этих компонентах зашито использование библиотеки gds32.dll, которая должна быть расположена в Windows\system32\. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
О какой конфигурации идёт речь? Об обычной или об встраиваемой? О клиентской части или о серверной? Кратко. Если речь идёт об обычной конфигурации firebird (НЕ Embedded), то на серверной машине (там где будет база) устанавливается полная нормальная версия птички. А на другом сетевом компьютере нужно использовать 2 файла: fbclient.dll и msvcr71.dll. Строка подключения server_name:c:\base\data.fdb Если речь идёт о встраиваемой конфигурации firebird (Embedded - локальная версия сервера), то на компьютер (там где будет база) копируются в папку приложения (обычно так) все файлы Firebird Embedded . Нет возможности для работы по сети и даже 2 приложения не могут получить одновременный доступ к базе. С одной и той же бозой можно работать двумя приложениями, но подключаться они должны через одну и ту жу библиотеку доступа. Строка подключения c:\base\data.fdb Расширение файла (*.FDB) никак не влияет на доступ к базе. Имя базы может быть с любым расширением и даже состоять из одной буквы без расширения. Не советую брать расширение *.GDB, т.к. база в этом случае может тормозить из-за того, что система восстановления Windows будет делать резервную копию базы. Добавлено через 2 минуты и 31 секунду Думаю, что недостаточно одной библиотек. Как минимум три. Но, согласно, лицензии (наверное (я не читал)) нельзя разбивать на части файлы. Добавлено через 5 минут и 31 секунду Собственно эти файлы и есть встраиваемый сервер: ib_util.dll icudt30.dll icuin30.dll icuuc30.dll А СКОРЕЕ ВСЕГО ПОНАДОБЯТСЯ ещё и эти: msvcp71.dll msvcr71.dll Ну и собственно библиотека доступа: fbembed.dll А ещё файл конфигурации: firebird.conf И вдобавок файл сообщений: firebird.msg Добавлено через 7 минут и 21 секунду А ещё могут понадобиться файлы из папки intl: fbintl.dll fbintl.conf А также все файлы из папки: udf Лучше не разрывать сервер на части ![]() |
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
holodnaya, про то, какие файлы должны где лежать уже не один раз писали, читаем файл \doc\README_embedded.txt из архива embedded сервера, для разных версий сервера (1.5, 2.х) набор файлов меняется. Далее общие рекомендации по разработке и установке ПО. На месте разработчика лучше установить полную версию SuperServer. Все подключения к БД осуществлять через localhost:disk:\local\path\to\database\dbname.fdb исключать localhost не рекомендую. При установке ПО на другой комп есть 2 варианта: 1. Если с одной БД работают несколько человек/приложений, то устанавливаем полный сервер и подключения server:disk:\local\path\to\database\dbname.fdb 2. Если с одной БД работает 1 человек/приложение достаточно скопировать embedded сервер см. выше. PS:holodnaya, нужно было начинать новую тему. -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
||||
|
||||
holodnaya |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 30.7.2008 Репутация: нет Всего: нет |
Спасибо вам огромное за помощь. Очень выручили.
![]() Оказывается, нужно было просто очень внимательно прочитать ReadMe. Положить все файлики, которые указал Akella (они же указаны в ReadMe), в папочку с прогой и в файле firebird.conf указать свою RootDirectory (в readMe описано, как и что именно подставлять). и в приложении у IBDatabase у свойства DatabaseName убрать localhost. |
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
у меня есть такие проекты, пока не было embedded, приходилось ставить полный сервер.
PS: Если вспомнить как работает загрузка модуля (dll) в Windows, то сначала dll'ка ищется в текущей папке, а потом в путях из переменой PATH -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
убрать localhost: - ведь каждый символ имеет значение, ошибка и уже ты к базе не подключишься Добавлено через 1 минуту и 22 секунды
просто программа до запуска DLL-ки может изменить текущую директорию и там не окажется библиотеки доступа |
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
Автору, если вопрос решен, помечай как решенный. -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
||||
|
||||
Deniz |
|
||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
-------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
||||
|
|||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
Я не утверждаю
![]() |
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
Akella, я специально у себя провел маленький эксперимент
-------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
SergXP |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 16.4.2008 Репутация: нет Всего: нет |
эх... что-то не получается у меня приконнектиться к файлу FDB.
Сделал все как вы сказали, но результата нет :(
DLL подгружается нормально... Закинул все файлы от embedded толку нет, нет соединения :( Что не так? Подскажите пожалйуста ![]() --------------------
База IMEI-номеров украденных и утерянных мобильных телефоновhttp://imeis.net.ru/ |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
fbembed.dll нужно переименовать в GDS32.DLL
|
|||
|
||||
SergXP |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 16.4.2008 Репутация: нет Всего: нет |
переименовал, результат тот же :( Не могли бы вы показать на простом примере как подключиться к файлу БД?
--------------------
База IMEI-номеров украденных и утерянных мобильных телефоновhttp://imeis.net.ru/ |
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
во-первых, неплохо бы ошибку описать.
Во-вторых, судя по названию компонент "IBDatabase1" это IBX (стандартные компоненты Delphi закладка InterBase). В них нет возможности указать клиентскую либу, они умеют работать только с gds32.dll, сл-но переименовываем fbembed.dll в gds32.dll. -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
SergXP |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 16.4.2008 Репутация: нет Всего: нет |
стоп! вроде заработало! Спасибо!
--------------------
База IMEI-номеров украденных и утерянных мобильных телефоновhttp://imeis.net.ru/ |
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
Чуток не успел, опиши как пробуешь
-------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
SergXP |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 16.4.2008 Репутация: нет Всего: нет |
Deniz, спасибо! Теперь соединение есть
![]() разбираюсь с InterBase... установил DBGrid, DataSource, IBQuery ну и сам IBDataBase. При выполнении кода,
Получаю Error. Transaction not assigned Где можно найти хорошие example по данному вопросу? --------------------
База IMEI-номеров украденных и утерянных мобильных телефоновhttp://imeis.net.ru/ |
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
SergXP, тебе с IBX'ом пример нужен?
Какая версия Delphi? Вроде были там (в поставке с 7) примеры, если память не изменяет проект "\Delphi_root\Demos\Db\IBMastApp\" -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
SergXP |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 16.4.2008 Репутация: нет Всего: нет |
спасибо...
![]() примерчик не плохой, но тяжелый пипец ![]() сижу гуглю, но инфа не совсем по теме --------------------
База IMEI-номеров украденных и утерянных мобильных телефоновhttp://imeis.net.ru/ |
|||
|
||||
SergXP |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 16.4.2008 Репутация: нет Всего: нет |
Вроде нашел кое-что. может кому пригодится http://www.ibase.ru/devinfo/ibx.htm
--------------------
База IMEI-номеров украденных и утерянных мобильных телефоновhttp://imeis.net.ru/ |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 20 Всего: 329 |
кинь на форму ещё и транзакцию, пропиши её в компонентах. И вот ещё пример (корявый, правда, недоделанный, но всё же связи увидишь) http://forum.vingrad.ru/index.php?showtopi...t&p=1741702 |
|||
|
||||
Deniz |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 22 Всего: 44 |
SergXP, напиши что тебе надо, может сделаем примерчик.
-------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
SergXP |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 16.4.2008 Репутация: нет Всего: нет |
Deniz,
![]() ![]() --------------------
База IMEI-номеров украденных и утерянных мобильных телефоновhttp://imeis.net.ru/ |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Interbase" | |
|
Обязательно указание: 1. Версию InterBase (Firebird, Yaffil) 2. Способа доступа (ADO, BDE, IBX и т.д.)
Если Вам понравилась атмосфера форума, заходите к нам чаще! С Уважением, Akella. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Firebird, Interbase | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |