Модераторы: Akella

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переименовать ключевое поле, Firebird 2.1 
:(
    Опции темы
Keeper89
Дата 6.6.2010, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: нет
Всего: 58



Доброго времени суток.

Возможно ли "автоматизированное" переименование ключевого поля в IBExpert'е? На поле также висит триггер и генератор, и оно используется в других таблицах.

Заранее спасибо.


--------------------
PM MAIL WWW   Вверх
Akella
Дата 7.6.2010, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 20
Всего: 329



Нет. Это связано не с IBExpert`ом, а с тем, что в базе есть связи поля в триггере, генераторе и т.д. Сервер не даст.
PM MAIL   Вверх
Keeper89
Дата 9.6.2010, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: нет
Всего: 58



Т.е. придется удалить поле и создать новое, правильно?


--------------------
PM MAIL WWW   Вверх
former
Дата 9.6.2010, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 1
Всего: 17



Цитата(Keeper89 @  9.6.2010,  14:09 Найти цитируемый пост)
Т.е. придется удалить поле и создать новое, правильно? 

Нет, поле удалять не нужно. Необходимо удалить все его связи (то, что может ссылаться на него). Как уже писал Akella, триггеры, процедуры, генераторы, просмотры и т.п.
В триггерах и процедурах ссылки на поле можно просто временно закомментировать, а генератор лучше пересоздать. Ну и про внешние ключи из других таблиц не забывай.
В зависимостях таблицы можно посмотреть.

Это сообщение отредактировал(а) former - 9.6.2010, 14:16


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Keeper89
Дата 9.6.2010, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: нет
Всего: 58



Цитата(former @  9.6.2010,  14:14 Найти цитируемый пост)
Нет, поле удалять не нужно. Необходимо удалить все его связи (то, что может ссылаться на него). Как уже писал Akella, триггеры, процедуры, генераторы, просмотры и т.п.
В триггерах и процедурах ссылки на поле можно просто временно закомментировать, а генератор лучше пересоздать. Ну и про внешние ключи из других таблиц не забывай.
В зависимостях таблицы можно посмотреть.

Так и делал, но после всех махинаций показалось, что поле пересоздать проще smile


--------------------
PM MAIL WWW   Вверх
former
Дата 9.6.2010, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 1
Всего: 17



Цитата(Keeper89 @  9.6.2010,  15:17 Найти цитируемый пост)
Так и делал, но после всех махинаций показалось, что поле пересоздать проще

Но зависимости-то все равно убивать придется. Тогда уж лучше пересоздать таблицу (ее генераторы, внешние ключи, триггеры и т.д.), подправив скрипт.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Keeper89
Дата 9.6.2010, 17:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: нет
Всего: 58



Цитата(former @  9.6.2010,  15:37 Найти цитируемый пост)
Но зависимости-то все равно убивать придется. Тогда уж лучше пересоздать таблицу (ее генераторы, внешние ключи, триггеры и т.д.), подправив скрипт. 

Хотелось бы вообще сохранить скрипт генерации всей БД smile

Именно переименование нужно в таблице, где уже есть значения. Поэтому пересоздать табличку думаю не удастся.


--------------------
PM MAIL WWW   Вверх
Akina
Дата 9.6.2010, 17:47 (ссылка)   | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 3
Всего: 454



 smile А зачем переименовывать поле? создай вьюху, которая вернёт ту же таблицу, но сменив имя поля, и используй её... или Firebird такого не позволяет?


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Keeper89
Дата 9.6.2010, 20:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: нет
Всего: 58



Цитата(Akina @  9.6.2010,  17:47 Найти цитируемый пост)
А зачем переименовывать поле? создай вьюху, которая вернёт ту же таблицу, но сменив имя поля, и используй её... или Firebird такого не позволяет? 

Неправильно назвал изначально. Т.к. работа еще на начальной стадии, хочется переименовать smile


--------------------
PM MAIL WWW   Вверх
Akina
Дата 9.6.2010, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 3
Всего: 454



А какая разница когда?


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
former
Дата 10.6.2010, 07:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 1
Всего: 17



Цитата(Keeper89 @  9.6.2010,  17:30 Найти цитируемый пост)
Хотелось бы вообще сохранить скрипт генерации всей БД

Для этого есть Извлечение метаданных (меню Инструменты или на панели инструментов). smile 


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Keeper89
Дата 10.6.2010, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: нет
Всего: 58



former, это нужно делать с пустой базой или не обязательно?


--------------------
PM MAIL WWW   Вверх
former
Дата 10.6.2010, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 1
Всего: 17



Цитата(Keeper89 @  10.6.2010,  15:35 Найти цитируемый пост)
former, это нужно делать с пустой базой или не обязательно? 

Когда тебе будет угодно. На одной из вкладок есть настройки. Можно, например, права сохранять в скрипт или выставлять значения генераторов и т.д.
Кроме того, можно извлекать не всю базу, но и отдельно конкретные таблицы, генераторы и т.д.
Достаточно гибкий инструмент.
Вот ссылка на документацию.
Зарегистрируйся на сайте разработчика и скачай новую доку в формате pdf.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Keeper89
Дата 11.6.2010, 00:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: нет
Всего: 58



Цитата(former @  9.6.2010,  15:37 Найти цитируемый пост)
Тогда уж лучше пересоздать таблицу (ее генераторы, внешние ключи, триггеры и т.д.), подправив скрипт. 

А это как можно сделать?


--------------------
PM MAIL WWW   Вверх
Frees
Дата 11.6.2010, 07:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 1
Всего: 54



IbExpert Инструменты - извлеч метаданные


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Interbase"
Alex

Обязательно указание:

1. Версию InterBase (Firebird, Yaffil)

2. Способа доступа (ADO, BDE, IBX и т.д.)

  • КАК ПРАВИЛЬНО ОФОРМИТЬ КОД - ЗДЕСЬ
  • КАК ПРАВИЛЬНО УКАЗАТЬ ТЕКСТ ОШИБКИ - ЗДЕСЬ
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • FAQ раздела лежит здесь!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С Уважением, Akella.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Firebird, Interbase | Следующая тема »


 




[ Время генерации скрипта: 0.0591 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.