2011-01-25 21 views
1

私は、「investigador」、「inv_proy」の3つのテーブルを作り、「proyectoの」Oracle:これらの制約はどのように追加できますか?

CREATE TABLE INVESTIGADOR (nip number, nombre varchar(20), 
    apellido varchar(20), fecha_nac date, sexo char, dir varchar(20), correo varchar(50)); 

    CREATE TABLE PROYECTO (id number, descripcion varchar(50), duración number, fecha_inicio date, presupuesto number); 

CREATE TABLE INV_PROY (nip number, id number, fecha date, cargo varchar(20)); 


ALTER TABLE INV_PROY ADD CONSTRAINTS INV_PROY_PK PRIMARY KEY (NIP); 

ALTER TABLE INVESTIGADOR ADD CONSTRAINTS INVESTIGADOR_PK PRIMARY KEY (NIP); 
ALTER TABLE PROYECTO ADD CONSTRAINTS PROYECTO_PK PRIMARY KEY(ID); 

どのように私はそれが私がINV_PROYするレジスタを追加するたびに関連するINVESTIGADORとPROYECTOレジスタの両方があることができますか?

また、INVESTIGADORからレジスタを削除するたびに、関連テーブルからも消去されるようにするにはどうすればよいですか?

答えて

3

3つのテーブルがどのように関連しているかを知らなくても、あなたの質問に答えるのは難しいですが、一般的な答えはカスケード削除で外部キー制約を使用することです。

+0

ええ、あなたが正しいと思います。私は外部キーとして何を使うべきかを決めなければならない。 – andandandand

関連する問題