Удалите CHARACTER SET UNICODE_FSS из столбца в базе данных Firebird

У меня есть база данных Firebird с несколькими таблицами в ней. Есть несколько столбцов, которые были добавлены, когда база данных была создана как

alter table Machines add MachineVersion varchar(100) CHARACTER SET UNICODE_FSS

Я хочу изменить эти столбцы, чтобы удалить CHARACTER SET UNICODE_FSS поэтому я управлял командой

alter table Machines alter column MachineVersion type VARCHAR(100)

Тем не менее, когда я открываю базу данных в SQL Manager, набор символов для этих столбцов по-прежнему UNICODE_FSS.

Есть ли другой синтаксис для второй команды, чтобы удалить CHARACTER SET UNICODE_FSS?

2 ответа

Решение
alter table Machines alter column MachineVersion type VARCHAR(100)

Этот запрос не изменит набор символов.

Если вы хотите удалить набор символов, вы должны изменить домен, например:

update RDB$FIELDS set
RDB$CHARACTER_SET_ID = NULL
where RDB$FIELD_NAME = 'RDB$141'

Вместо RDB$141 используйте столбец домена

Можно добавить новый столбец, скопировать данные из старого столбца в новый и позже удалить старый столбец?

Другие вопросы по тегам