Как заставить 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 »»