Страница 1 из 1

Длина поля физической таблицы

Добавлено: 16 сен 2004, 15:10
jornand
Вопрос по Pervasive:
Можно ли увеличить длину стрингового поля (конкретно - длина поля VSTRING таблицы ATTRVAL - "Значения внешних атрибутов") физической таблицы базы данных.
Если да, то как и не повлияет ли это на функционирование Г. (в будущем)?

Re: Длина поля физической таблицы

Добавлено: 16 сен 2004, 16:00
Maverick
В принципе, можно - путем перекомпиляции словаря... Только хлопотно это... Да и в дальнейшем с поддержкой версий трудновато - постоянно перекомпилять словарик придецца

Re: Длина поля физической таблицы

Добавлено: 16 сен 2004, 18:41
Vitas
В принципе ни чего сложного, одна операция модификации поля и усе. В дальнейшем просто надо будет чуть-чуть подправить словарь.

Лично у меня уже много изменений в таблицах да и своих таблиц и никакой сложности в переходе от одной версии к другой, просто чуть больше внимательности этой операции уделять надо будет :)

Re: Длина поля физической таблицы

Добавлено: 17 сен 2004, 11:14
edward_K
вообще модификация таблицы может потребовать
и перекомпиляции фейсов где она используется,
а может быть и dll :), поскоку там точно идет жесткая привязка к структуре.
особенно если идет изменение длины или вставка полей в середину - глюки могут быть разные. Оптимальней добавлять отдельную таблу
и в ней заводить доп.поля.

Re: Длина поля физической таблицы

Добавлено: 17 сен 2004, 11:50
ecasoft
Вообще зря они конечно в Галактике не сделали возможность привязки мемо полей в качестве внешних атрибутов.

С увеличением длины поля путем модификации словаря думаю будут проблемы. Идея тут в чем. Когда словарь компилируется, то таблица в виде структуры данных затем инклюдится и включается в код Паскаля. Если в системе есть какие-то алгоритмы, использующие эту структуру из Паскаля, то они грохнуться естественно, если данныя структура в БД не соответсвует той, что в Паскале. Если таких алгоритмов нет (что может быть), то на первый взгляд все ОК. Просто при переходе на новую версию надо будет исправить несколько строк в конверторе, также декомпилировать новый словарь. Бывают правда версии, где меняется координально структура некоторых таблиц...есть обработка до ЭКСПОРТА в DBF. Тут тогда наверное могут быть проблемы.

Я бы не решился, к примеру, менять структуру базовых таблиц. Свои понятно. Их просто добавил, а при конвертации скопировал в новую БД да и все. Это просто.

Вот такие мысли :) Удачи

Re: Длина поля физической таблицы

Добавлено: 17 сен 2004, 18:03
Vitas
Да нет, ни чего перекомпилить не надо, если поле в таблице добавил "в конец" в описании а не в середине. Вот чего не стоит делать, так это удалять поля, ибо смещение ни кто еще не отменял :) и тогда фейсы точно перекомпилить прийдется, а так добавляй сколько влезет, ничего страшного не будет.

Re: Длина поля физической таблицы

Добавлено: 17 сен 2004, 19:32
ecasoft
Он хочет изменить длину поля..т.е. одним словом смещение он хочет изменить всех, кто после строки этой в структуре :)) Плохое одним словом он задумал дело :)

Re: Длина поля физической таблицы

Добавлено: 20 сен 2004, 12:31
Vitas
В этом случае да, плохо это :)