b>j)΄!Pԫ&;"kB޶}pSVT(wę!j x;-m@JnQ+պכ7MajfJͱ4jѲ撆RxZMz7vIW/dٞТזcZM~ji ߒsQzԠDW3Den"M+/B:-uIJ7j委9p='mANޭ=/B:-n&nUfqxZM~c Ϲ+,&ᾺܢF[(1*" ϒ"Jԧ<;b" "jܢF[x ,!q қ*]/؝27SMcs"ޭDQ/应ܢF_! :s" 7`F+SVTn"IJnQ/应B 4 wD"IJ׭-`S9DrjiEJ߅gJ应矁[xZM~n"IB؃!'Тѕ+(mIKʭ/|ϐܢF[xZMzG %嬩/c[[ Измена с IB9.0.3 / IB10 — BASE64

Измена с IB9.0.3 / IB10 — BASE64

Сегодня с утра дожал изменения связанные с переездом на VS2010 и после этого запустил базовые тесты для Interbase 9.0.3 / Firebird 2.5 / Yaffil. С IB меня ждал сюрприз.

При получении списка всех колонок базы данных, провайдер возвращает такую коллекцию ошибок:
1. «DBCHEMA_COLUMNS: Ошибка при формировании сведений для [RDB$ENCRYPTIONS][RDB$ENCRYPTION_VALUE]»
2. «Неизвестное имя кодовой страницы [BASE64]»

Полез в системные таблицы. Колонки
1. RDB$ENCRYPTIONS::RDB$ENCRYPTION_VALUE
2. RDB$ENCRYPTIONS::RDB$ENCRYPTION_SALT
3. RDB$ENCRYPTIONS::RDB$ENCRYPTION_PASSWORD2
переведены на новую кодовую страницу — BASE64

В Interbase 9.0.0 эти колонки имеют кодовую страницу NONE

В последнем IB (v10) — BASE64

В документациях IB9.0.3/IB10 — про BASE64 ни слова.


Если вы используете IBProvider с IB9.0.3/IB10 — укажите в строке подключения «schema_cache=0». Это изменит режим загрузки метаданных и провайдер не будет грузить описания колонок таблицы RDB$ENCRYPTIONS.


Мне бы пора бы уже философски относится к таким изменениям (оно же все к лучшему), но почему то все равно тянет грязно выругаться. Пожалуй не буду себя сдерживать — дабы не отравлять свой организм этими не высказанными словами.

One Comment

Про Interbase и текстовые блобы | Блог разработчика IBProvider | Инновации для Firebird и Interbase  on 20 ноября, 2010

[…] поддержку BASE64, о которой я написал в предыдущем сообщении, я начал писать тесты для этой кодовой […]

Leave a Comment