Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Связанные таблицы [D5, IB5.x]


Ruslan_ ©   (2002-07-12 20:43:00) 

Привет всем!
Как связать две таблицы на SQL(Сервер InterBase локальная версия)?
И как работать с этими таблицами (каскадное удаление, добавление записей в главную и в подчиненную таблицу)
Если можно примерчик или ссылку на сайт где можно почитать об этом.
Спасибо.


Desdechado   (2002-07-15 15:53:00) [1]

Д.С.Боуман, С.Л.Эмерсон, М.Дарновски "Практическое руководство по SQL"


pave1   (2002-07-15 12:45:00) [2]

to Desdechado
А что можешь посоветовать почитать?


Desdechado   (2002-07-15 10:56:00) [3]

таблицы существуют в базе данных. если к ней подключишься, то и доступ к таблицам будет (если админом разрешен GRANT/REVOKE).
понятие связанных таблиц не для SQL-запросов, а для целостности БД.
почитай все-таки толковую книжку по БД и SQL.


pave1   (2002-07-14 22:12:00) [4]

Например если я свяжу две таблицы в IB, то будут ли они существовать в Дельфи при подключении?
и еще
Связанные таблицы в ИБ работают только для SQL запросов или нет?


Vlad1   (2002-07-14 17:16:00) [5]

Поправочка:

create table tab2(
Nomer smallint not null primary key,
YourRecKey varchar(30) default "Не определено" collate pxw_cyrl,
Fam varchar(20) not null collate pxw_cyrl,
photo blob,
foreign key (YourRecKey) references tab1
on delete set default on update cascade,
constraint YourRecKey Check(Exists(Select YourRecKey from tab1where tab1.YourRecKey=tab2.YourRecKey))
);



Vlad1   (2002-07-14 17:13:00) [6]


create table tab1(
YourRecKey varchar(30) not null primary key collate pxw_cyrl,
AdditionalInfo varchar(15) collate pxw_cyrl

);
create table tab2(
Nomer smallint not null primary key,
YourRecKey varchar(30) default "Не определено" collate pxw_cyrl,
Fam varchar(20) not null collate pxw_cyrl,
photo blob,
foreign key (YourRecKey) references tab1
on delete set default on update cascade,
constraint YourRecKey Check(Exists(Select YourRecKey from tab2 where tab1.YourRecKey=tab2.YourRecKey))
);


Если использовать IBQuery, то можно IBQuery1,DataSource1 связать
с Tab1, а IBQuery2,DataSource2 связать
с Tab2 и затем: IBQuery2.DataSource:=DataSource1

...
IBQuery2.SQL.ADD("select * from tab2 where YourRecKey=:YourRecKey");


и т.п.


Desdechado   (2002-07-13 15:16:00) [7]

и еще триггеры.
в ib5 есть очень подробная справка. посмотри create table


Fran   (2002-07-12 21:20:00) [8]

Через внешний ключ. В любой киге по БД.


Наверх

Титульная страница Поиск, карта сайта Написать письмо