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

Увеличение имени таблицы

Добавлено: 11 сен 2007, 12:17
Эдуард
Здраствуйте!
База данных в IB 7.5. Возникла необходимость создание таблицы с именем больше 67 символов.
Пробывал изменить поле RDB$RELATION_NAME в RDB$RELATIONS, не получилось(рухнула вся база).
Помогите плз.
Заранее благодарен!

Добавлено: 11 сен 2007, 12:19
Merlin
Плачу... Спасибо... А что же тогда будет в пятницу :lol:

Добавлено: 11 сен 2007, 12:32
kdv
сейчас это называется "экстрим", а люди, которые этим занимаются - "экстремалы". Раньше это называлось по другому.

относится как к желанию иметь имя таблицы больше 67 символов, так и к ручному ковырянию системных таблиц.

Добавлено: 11 сен 2007, 12:42
WildSery
ОФФ: Вспоминается бородатый анекдот про паспортный стол...

Добавлено: 11 сен 2007, 14:29
kdv
тем не менее, я бы хотел увидеть пресловутое имя таблицы, которое не влезает в 67 символов, а также причину появления таблицы с таким именем.

у меня как-то ни разу больше 25 символов не получалось.

Добавлено: 12 сен 2007, 06:25
Эдуард
Имя таблицы формируется автоматически по имени переменной из ПЛК S7-400. Имя переменной может состоять из 200 символов. Чтобы ничего не мудрить хотелось бы чтоб имя таблицы совпадало с именем переменной.
Так существует возможность увеличения имени таблицы или нет?
И почему такое ограничение в 67 символов?

Добавлено: 12 сен 2007, 12:50
WildSery
Если тебе пофиг, как называется таблица, формируй имя не по имени, а по хэшу имени переменной. Даже 20 символов выше крыши хватит.

Добавлено: 12 сен 2007, 13:05
kdv
Имя таблицы формируется автоматически по имени переменной из ПЛК S7-400. Имя переменной может состоять из 200 символов.
убиться можно. во-первых, не знаю что такое ПЛК. И S7. тем более в модификации 400. Какое бы оно ни было, не представляю себе ИМЕНИ ПЕРЕМЕННОЙ длиной в 200 символов. Даже автоматически сгенерированное.
Чтобы ничего не мудрить хотелось бы чтоб имя таблицы совпадало с именем переменной.
может, проще сделать таблицу соответствия этим мудреным именам переменных именам таблиц?
Так существует возможность увеличения имени таблицы или нет?
НЕТ. У меня встречный вопрос - у Вас IB 7.x куплен, что вы закладываетесь на его функциональность? (расширенные до 67 символов имена объектов). и вы пишете распространяемое (!) приложение?
И почему такое ограничение в 67 символов?
потому что имена объектов обычно формируются программистом, и поэтому вполне хватает 27 символов. даже если имена генерируются case-инструментом, то тоже такого количества хватает.

Добавлено: 13 сен 2007, 07:04
Эдуард
ПЛК - программируемый логический контроллер.
IB7 входил в поставку BDS2006.
Необходимо архивировать данные полученные с ПЛК.
Переменные формируются программистом ПЛК. Например может быть -
Nitrogen_to_hopper_cutoff_valve_plc_out_local_box_lamp_ready, и максимум может быть 200 символов.
Символ '_' в имени переменной это вложенность типов.
Хотелось бы автоматически создавать таблицы с именами совпадающими с именами переменных.
Приложение продаваться не будет, но думаю применяться будет активно.

Добавлено: 13 сен 2007, 09:08
Dimitry Sibiryakov
Эдуард писал(а):Хотелось бы автоматически создавать таблицы с именами совпадающими с именами переменных.
Парень, а ты что-нибудь про проектирование БД слышал? Про систему "сущность-связь"? Про нормальные формы? Или просто "хочешь"? Вот скажи мне - зачем на каждую переменную заводить по таблице? (Просто я бы завел одну таблицу - с именами переменных.)

Добавлено: 13 сен 2007, 09:40
kdv
IB7 входил в поставку BDS2006.
вы имеете право использовать IB 7.5 только для разработки. для эксплуатации его нужно будет купить отдельно.