Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как создать ссылку?? / 6 сообщений из 6, страница 1 из 1
31.07.2003, 16:52
    #32224145
Shantor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать ссылку??
Люди, помогите, плз:
В MS SQL 7.0 не могу ни как понять, как в запросе, при создании таблицы создать связь между таблицами Relationship с двумя записями.
т.е. есть готовая таблица с двуми Primary Key, создается еще одна с двумя Foreign Key. Как их связать?

с надеждой на лучшее... :)
...
Рейтинг: 0 / 0
01.08.2003, 08:20
    #32224499
Andrew Campball
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать ссылку??
в запросе, при создании таблицы

Как это понять ?
...
Рейтинг: 0 / 0
01.08.2003, 13:26
    #32224986
Shantor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать ссылку??
у меня в программе, в Delphi, необходимо создавать таблицу в рантайме, т.е. через Query я делаю запрос:
create table Firms (id int identity(1, 1) not null,
id_dog1 int not null, id_dog2 int not null)
В БД есть уже готовая таблица:
Dogovor с полями id_1, id_2 и другими текстовыми
Необходимо создать ссылку(связь Relationship) от таблицы Firms к Dogovor
с двумя записями:
Primary Key Foreign Key
Dogovor.id_1 Firms.id_dog1
Dogovor.id_2 Firms.id_dog2

И сделать это нужно так же через запрос Query из самой программы.
В доке есть что-то, но только для связки по одному полю, например вот так:
create table Firms (id int identity(1, 1) not null,
id_dog1 int not null FOREIGN KEY REFERENCES Dogovor(id_1),
id_dog2 int not null)

но на это дело сервак ругается, что поле Dogovor.id_1 не уникально, и он прав ;( и изменить это нельзя....

может кто-нить знает как разрулить такой вопрос?
...
Рейтинг: 0 / 0
01.08.2003, 14:17
    #32225099
m_kus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать ссылку??
Надо наоборот связь направлять, насколько я понимаю... типа
ALTER TABLE Dogovor ADD CONSTRAINT FK_Dogovor_2_Firms FOREIGN KEY (id_1) REFERENCES (Firms.id_1) ...
или я не понял ничего
...
Рейтинг: 0 / 0
01.08.2003, 15:13
    #32225186
Shantor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать ссылку??
Спасибо, за подсказку :)

вот что нужно было:
ALTER TABLE Dogovor ADD CONSTRAINT FK_Dogovor_2_Firms
FOREIGN KEY (id_1, id_2) REFERENCES Firms (id_dog1, id_dog2)

но только это идет отдельным запросом, уже после создания таблицы, что вобщем-то не мешает ;))
я-то изначально пытался сразу задать связь, при создании таблицы

спасибо еще раз!

солнышка и радости :)
...
Рейтинг: 0 / 0
03.08.2003, 08:19
    #32225773
m_kus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как создать ссылку??
Можно (во всяком случае в Oracle 8i) и одним запросом, что-то типа:
create table Firms (id int identity(1, 1) not null,
id_dog1 int not null, id_dog2 int not null, CONSTRAINT FK_Dogovor_2_Firms
FOREIGN KEY (id_1, id_2) REFERENCES Firms (id_dog1, id_dog2))
...
И вам лета и веселья!
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как создать ссылку?? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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