Как да промените типа на поле, дължината поле или поле ред
Как да промените типа на поле, дължината поле или поле ред
От версия 6.0 InterBase Всички от изброените е доста голяма рана, тъй като в InterBase 6 и всички варианти на по-горе поддържа оператора маса колона (InterBase, Firebird, зелен кълвач). Вижте. Документация.
Като начало, стандартът (ниво 92 влизане ANSI SQL) № език конструкти за определяне на вида на поле модификация. Но същността IB може да предприеме такива действия, благодарение на специален механизъм за мониторинг на спазването на физическите данни, както и информация за техните видове в таблиците на системата.
Това се прави, така че (най-добре е да стартирате Database Explorer с включването на елемента Преглед / System Data):
1. Намерете си поле в таблицата RDB $ RELATION_FIELDS по име етаж (RBD $ .FIELD_NAME) и име на таблица (RDB $ RELATION_NAME). Обърнете внимание на съдържанието на RDB $ FIELD_SOURCE - трябва да има нещо като RDB $ АВ.
2. Полученото RDB $ NNN сега намерите в таблицата RDB $ ОБЛАСТИ
3. Променете стойностите на желаната дължина на полето (RDB $ FIELD_LENGTH) или полетата тип (RDB $ FIELD_TYPE). промени Невярно ред в RDB $ FIELD_POSITION
Забележка: в Database Explorer, можете да се ускори изпълнението на параграф 1 - отворите база данни, изберете таблици, желаната маса, колоните, и желаната област. Невярно Определяне на стойността на полето Домейн и съответства на това, което търсите (RDB $ АВ). След извършване на стъпки 2 и 3.
В този случай, ще продължите да видите старата информация за полета на масата. Вие ще видите нова структура след повторно свързване към базата данни. В този случай, базата данни ще бъде следното:
IB е особено полезна функция, когато трябва да се промени дължината на полето низ, можете да бъдете безотговорни, определя твърде малък. Например CHAR (20) на CHAR (50), и т.н.
Ан Харисън предлагат готови искания за промени в дължината на низа (CHAR и VARCHAR) видове, посочени в таблицата:
Промяна на вида на BLOB:
(В този пример всеки подтип на подтип 0)
RDB $ полета F набор f.rdb $ field_sub_type = 0
където f.rdb $ field_name =
(Изберете rfr.rdb $ field_source
от RDB $ relation_fields RFR
където rfr.rdb $ field_name = "COLUMN_NAME" и rfr.rdb $ relation_name = "TABLE_NAME"