Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Как заставить Interbase принять COLLATE PXW_CYRL по умолчанию

Delphi , Базы данных , Interbase

Как заставить Interbase принять COLLATE PXW_CYRL по умолчанию

Автор: Nomadic

(Это очень полезно при прямой работе с IB из различного CASE-инструментария, типа PowerDesigner или ErWIN)

Чтобы не писать каждый раз COLLATE, я сделал следующее:

  1. Создал сохранённую процедуру
    create procedure fix_character_sets
    as
    begin
    update
    rdb$character_sets
    set
    rdb$default_collate_name = 'PXW_CYRL'
    where
    rdb$character_set_name = 'WIN1251'
    and
    rdb$default_collate_name = 'WIN1251'
    ;
    end
  2. Запустил ее один раз.

  3. Создаю таблицы без указания COLLATE.

  4. После восстановления из архива, запускаю еще раз.

Что отличное вопрос! Чтобы Interbase использовал по умолчанию.collate PXW_CYRL-коллацию, компания Nomadic создала хранимую процедуру fix_character_sets, которая обновляет таблицу rdb$character_sets для установки имени по умолчанию для коллации для символьной таблицы 'WIN1251' в 'PXW_CYRL'.

Вот, что код делает: 1. Процедура начинает с обновления таблицы rdb$character_sets. 2. Она устанавливает значение поля rdb$default_collate_name в 'PXW_CYRL' для строк, где: * поле rdb$character_set_name равно 'WIN1251', и * поле rdb$default_collate_name сейчас установлено в 'WIN1251'. 3. Процедура заканчивается с помощью ключевого слова end.

Проведя эту хранимую процедуру один раз, Nomadic фактически изменила по умолчанию коллацию для символьной таблицы 'WIN1251' в 'PXW_CYRL'. Это означает, что при создании таблиц без указания коллации Interbase будет использовать COLLATE PXW_CYRL по умолчанию.

После восстановления из архива выполнение этой процедуры снова обеспечивает, что коллация по умолчанию установлена правильно.

Эта решена особенно полезна при работе с Interbase из различных инструментов CASE, таких как PowerDesigner или ErWIN, где указание коллации каждый раз может быть скучным. Установка коллации по умолчанию один раз Nomadic упрощает свой workflow и уменьшает необходимость вручной интервенции.

Благодарим Nomadic за поделись этой блестящей решением!

Автор статьи Nomadic предложил создать сохранённую процедуру для установкиCOLLATE PXW_CYRL по умолчанию в Interbase, что позволяет не писать каждый раз COLLATE при создании таблиц.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Interbase ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100

Время компиляции файла: 2024-05-19 17:53:24
2024-05-19 18:52:58/0.0050678253173828/2