[ draksa @ 04.04.2007. 18:41 ] @
Evo ovako:
Imam dve tabele od interesa i sve ovo radim u SQL Serv. Express:
create table Lista
(
ID int primary key,
Naziv nvarchar(50) not null,
UserName nvarchar(20) not null
)

i

create table ListEntry
(
Ime nvarchar(20) not null,
Prezime nvarchar(20) not null,
Email nvarchar(50) primary key,
...
ListID int foreign key references Lista(ID),
)

Kako da napravim da brisanje jednog elementa iz tabele lista automatski obrise sve elemente iz tabele ListEntry.
Ili receno na drugi nacin: Kako da brisnje liste automatski obrise sve elemente liste?

Pretpostavljam da je rec o nekakvoj stored proceduri ili triger-u, ali posto bas i nemam mnogo pojma o tome bilo bi lepo da mi neko pomogne tako sto ce da predlozi resenje i malko detaljnije obrazlozi ili me uputi na neki link.
Unapred hvala!
Dragan

[ Miloš Baić @ 04.04.2007. 19:02 ] @
Code:

-- lista
create table Lista
(
ID int not null,
Naziv nvarchar(50) not null,
UserName nvarchar(20) not null

constraint pk_lista primary key (id)
);

create table ListEntry
(
id int not null
Ime nvarchar(20) not null,
Prezime nvarchar(20) not null,
Email nvarchar(50) primary key,
...,
constraint fk_ListEntry foreign key (id)
 references lista (id)
  on update cascade
  on delete cascade
)

Ostvaruje se referencijalni integritet, a "cascade" omogućuje i ažuriranje i brisanje kaskadno.

BTW, pišem iz glave, ali to je to, moraš samo malo tabele srediti, mislim na drugu, da li ćeš imati još PK (složeni - npr. id, rb!?!).
[ draksa @ 05.04.2007. 16:51 ] @
Hvala!!!