Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Почему при создании БД создаются лишние ограничения? / 6 сообщений из 6, страница 1 из 1
16.05.2008, 13:54
    #35317107
Arsenium
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему при создании БД создаются лишние ограничения?
Создаю БД из скрипта. В числе прочего добавляю ограничения типа:
Код: plaintext
1.
ALTER TABLE ONLY trainingplan
    ADD CONSTRAINT fk_trainingplan_discipline FOREIGN KEY (disciplineid) REFERENCES discipline(id);
Но в базе создаются два одинаковых ограничения с различными именами - fk_trainingplan_discipline и fk26905e9b87f59157. Последнее приходится удалять через админку.
Почему это происходит?
...
Рейтинг: 0 / 0
16.05.2008, 14:29
    #35317237
Ёш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему при создании БД создаются лишние ограничения?
не хватает данных :) приведите create table для trainingplan.

ps: возможно Вы создаёте таблицу из какой-нибудь модели/программы где этот внешний ключ тоже уже определён на этапе проектирования ?


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
16.05.2008, 14:32
    #35317254
Ёш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему при создании БД создаются лишние ограничения?
версия сервера какая ?


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
16.05.2008, 16:46
    #35317807
Arsenium
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему при создании БД создаются лишние ограничения?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE TABLE trainingplan (
    id serial NOT NULL,
    curriculumid integer NOT NULL,
    semesterid integer NOT NULL,
    disciplineid integer NOT NULL,
    weekhourcount integer NOT NULL
);
...
Рейтинг: 0 / 0
16.05.2008, 16:48
    #35317810
Arsenium
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему при создании БД создаются лишние ограничения?
Я создаю из SQL файла, где нет никаких fk9256043862589658
...
Рейтинг: 0 / 0
16.05.2008, 17:18
    #35317933
Thamerlan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему при создании БД создаются лишние ограничения?
Попробуйте создать одним DDL'ом:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE trainingplan (
    id serial NOT NULL,
    curriculumid integer NOT NULL,
    semesterid integer NOT NULL,
    disciplineid integer NOT NULL,
    weekhourcount integer NOT NULLб
CONSTRAINT pk_...,  
CONSTRAINT fk_trainingplan_discipline FOREIGN KEY (disciplineid) REFERENCES discipline(id)
);

П.с.
Можете показать SQL, которым вы выводите список FK на вашу таблицу? Может не учитываете имя схемы?
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Почему при создании БД создаются лишние ограничения? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]