Как работать с WIN1251 в Firebird embedded ?
Модераторы: kdv, Alexey Kovyazin
Как работать с WIN1251 в Firebird embedded ?
Взял FBE 1.53. Остановил на всякий случай сервер FB1.53(SS). Запускаю exe. При попытке подключиться к базе выскакивает окно "bad parameters on attach or create database CHARACTER SET WIN1251 is not defined". Меняю в программе(D6+IBX) в компоненте WIN1251 на none. При запуске дает ошибку "arithmetic exception, numeric overflow, or string truncation Implementation of text subtype 52 not located". Как обойти эти вилы ?
Распаковал, как положено. Сформировал отдельный каталогkdv писал(а):РАСПАКОВАТЬ АРХИВ FBE С ПОДКАТАЛОГАМИ.
Содержимое папки C:\fb
22.06.2006 14:22 <DIR> .
22.06.2006 14:22 <DIR> ..
22.06.2006 14:22 0 aa
14.12.2005 13:22 275 aliases.conf
22.06.2006 13:21 20 502 firebird.conf
22.06.2006 13:20 176 firebird.log
17.01.2006 01:05 132 796 firebird.msg
17.01.2006 01:05 1 527 894 gds32.dll
17.01.2006 01:05 24 576 ib_util.dll
09.04.2003 01:05 26 519 IDPLicense.txt
22.06.2006 14:10 5 979 648 Ipoteka.exe
22.06.2006 14:15 4 857 856 IPOTEKA.GDB
17.08.2005 01:05 4 755 Readme.txt
22.06.2006 14:10 246 uavto.ini
12 файлов 12 575 243 байт
2 папок 1 530 544 128 байт свободно
Чего здесь не хватает ?!
Спасибо !
Спасибо, все заработало !kdv писал(а):по-моему "распаковать с подкаталогами" - вполне понятная и осмысленная рекомендация.Чего здесь не хватает ?!
Откуда тогда ты взял Embedded, что у тебя в нем половины файлов нет?
конкретно - нет каталога intl и соответственно файла в нем, в котором и лежат все кодировки, включая win1251.
ммм, завидую понадобился мне в кои-то веки Embedded, скачал, распаковал FB 1.5.3 Embedded в каталог с прогой, почитал README (Firebird 1.5.2 Embedded Server notes), создал пробную базу с табличкой, попробовал к базе подцепиться - лежит в том же каталоге, что и прога и FB 1.5.3 Embeddedbal писал(а): Спасибо, все заработало !
при указании в строке соединения параметра lc_WIN1251 получил
фигу в виде
bad parameters on attach or create database CHARACTER SET WIN1251 is not defined
почесал репу - остановил сервер FB 1.5.3 SS (установлен на этой же машине), попытался подконектиться к Embedded снова - получил ту же фигу
опять почесал репу
прописал в firebird.conf параметр
RootDirectory =c:\work\Myprg
фига не исчезла
с кодировкой NONE к безе цепляюсь, но это не то, что требуется
как жить? кому верить? ткните пальцем, в чем ошибка, а?
ЗЫ Распаковал FB 1.5.3 Embedded - вместе с подкаталогами и файлами
c:\work\Myprg\intl\fbintl.dll присутствует
спасибо за подсказку, как говорится - очевидное - рядомkdv писал(а):используй filemon, грузится ли fbintl.dllкак жить? кому верить? ткните пальцем, в чем ошибка, а?
про filemon сам должен был вспомнить
ситуация немного прояснилась -
bad parameters on attach or create database CHARACTER SET WIN1251 is not defined
получаю, когда настраиваю компонент TpFIBDatabase в дельфях в design-time, при запуске готового ехе-шника видно, что библиотека грузится
7:50:54 pltrprg.exe:1292 OPEN C:\work\Myprg\PLTRPRG\intl\fbintl.dll SUCCESS Options: Open Access: All
правда еще хочет:
7:50:54 pltrprg.exe:1292 OPEN C:\work\Myprg\PLTRPRG\intl\fbintl2.dll FILE NOT FOUND Options: Open Access: All
я так полагаю - всякие экзотические кодировки?
IBExpert поначалу тоже
bad parameters on attach or create database CHARACTER SET WIN1251 is not defined
выдавал, пока не поместил в каталог с IBExpert папку \intl\ с файлом fbintl.dll
теперь вот размышляю, куда бы этит каталог \intl пихнуть, чтобы я и в дельфях в design-time ошибки не получать
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
ёкарный бабай... где дельфя, а где fb embedded? Объясняешь по 100 раз что НЕ надо embedded использовать при разработке, нет ведь, не понимают. И главное, додуматься не могут, чтополучаю, когда настраиваю компонент TpFIBDatabase в дельфях в design-time...
но попробовать-то хочется...
1. delphi32.exe и есть приложение, которое будет в дизайн-тайме подсоединяться к БД.
2. два процесса (delphi32.exe и проект.exe) не могут одновременно подключится к одной БД через embedded.
в результате разрабатывать приложение с использованием Embedded просто неудобно. То есть, разрабатывать можно, только зачем самому себе головную боль устраивать?
угу, не могут но ведь по идее и не должны, чепляться должно отлаживаемое приложениеkdv писал(а): Объясняешь по 100 раз что НЕ надо embedded использовать при разработке, нет ведь, не понимают. 1. delphi32.exe и есть приложение, которое будет в дизайн-тайме подсоединяться к БД.
2. два процесса (delphi32.exe и проект.exe) не могут одновременно подключится к одной БД через embedded.
Нуууу, ну вот захотелось попробовать разок-то монаkdv писал(а): в результате разрабатывать приложение с использованием Embedded просто неудобно. То есть, разрабатывать можно, только зачем самому себе головную боль устраивать?
не, разрабатывать, канешна с открытыми буду, но -kdv писал(а): а разрабатывать приложение ты будешь с закрытым Database, датасетами и т.п.? Или среда при разработке святым духом к БД коннектится? Или премудро закрывает коннекты при старте отладчика?
TFIBDatabase.DesignDBOptions
Set the ddoStoreConnected item in the DesignDBOptions property to True to enable a saving of the Connected property into a dfm-file in design mode. Do not recommended to save Connected value.
полагаю, что если выставлю данное свойство в false, то при запуске в режиме отладки дельфя должна закрыть соединение, а отлаживаемое приложение соответственно открыть в необходимый момент.
хотя, канешна, проверить бы надо, вдруг я слишком хорошо о дельфе думаю
ЗЫ проверил - дельфя рвет соединение при запуске проги для отладки
гы, а интересная идея бурбулятор получиться должонkdv писал(а):все равно - бессмысленные телодвижения. сначала ведро на голову надеть, а потом пытаться дырки в нем просверлить, чтобы видно было.ЗЫ проверил - дельфя рвет соединение при запуске проги для отладки
да согласен я, попробовать просто захотелось и все
вывод - с FBE все в норме, когда распакуешь, куды надо, но для отладки нефиг пользовать, ибо гиморно
усе, в этой теме более черкать не буду, а то полный оффтоп получается