0% found this document useful (0 votes)
54 views3 pages

Agentie Publicitate SQL

The document contains SQL commands to: 1) Create tables for clients, branches, categories, employees and ads with sequences and triggers for auto-incrementing primary keys. 2) Add constraints like foreign keys and checks between the tables. 3) Create a trigger to prevent transferring the relationship between clients and ads tables by raising an error.

Uploaded by

simon362003
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views3 pages

Agentie Publicitate SQL

The document contains SQL commands to: 1) Create tables for clients, branches, categories, employees and ads with sequences and triggers for auto-incrementing primary keys. 2) Add constraints like foreign keys and checks between the tables. 3) Create a trigger to prevent transferring the relationship between clients and ads tables by raising an error.

Uploaded by

simon362003
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 3

Anexe

Comenzi SQL
CREATE TABLE "CLIENTI" ( "ID" NUMBER(10) NOT NULL, "NUME" VARCHAR2(50) NOT NULL, "ADRESA" VARCHAR2(50) NOT NULL, "DATA_NASTERII" DATE NOT NULL, "TELEFON" VARCHAR2(15) NOT NULL, "E_MAIL" VARCHAR2(50), CONSTRAINT "CLIENTI_PK" PRIMARY KEY ("ID") ) CREATE SEQUENCE "CLIENTI_SEQ" CREATE TRI ER "BI_CLIENTI" BEFORE INSERT ON "CLIENTI" FOR EACH RO! BE IN SELECT "CLIENTI_SEQ""NE#TVAL INTO $NE!"ID FROM DUAL% END% CREATE TABLE "FILIALE" ( "ID" NUMBER(10) NOT NULL, "LOCALITATE" VARCHAR2(&0) NOT NULL, "ADRESA" VARCHAR2(50) NOT NULL, "TELEFON" VARCHAR2(15) NOT NULL, CONSTRAINT "FILIALE_PK" PRIMARY KEY ("ID") ) CREATE SEQUENCE "FILIALE_SEQ" CREATE TRI ER "BI_FILIALE" BEFORE INSERT ON "FILIALE" FOR EACH RO! BE IN SELECT "FILIALE_SEQ""NE#TVAL INTO $NE!"ID FROM DUAL% END% CREATE TABLE "CATE ORII" ( "ID" NUMBER(10) NOT NULL, "NUME" VARCHAR2(50) NOT NULL, "NATURA_TRAN'ACTIEI" VARCHAR2(&0) NOT NULL, "TARIF" NUMBER((,2) NOT NULL, "SPECIFICATII" VARCHAR2(50), CONSTRAINT "CATE ORII_PK" PRIMARY KEY ("ID") ) CREATE SEQUENCE "CATE ORII_SEQ"

CREATE TRI ER "BI_CATE ORII" BEFORE INSERT ON "CATE ORII" FOR EACH RO! BE IN SELECT "CATE ORII_SEQ""NE#TVAL INTO $NE!"ID FROM DUAL% END% CREATE TABLE "SALARIATI" ( "ID" NUMBER(10) NOT NULL, "NUME" VARCHAR2(50) NOT NULL, "ADRESA" VARCHAR2(50) NOT NULL, "DATA_AN A)ARII" DATE NOT NULL, "SALARIU" NUMBER((,2), "FUNCTIE" VARCHAR2(20), "TARIF_ORAR" NUMBER(5,2), "SPECIALI'ARE" VARCHAR2(20), "TIP_SLT" VARCHAR2(20) NOT NULL, "ID_FLA" NUMBER(10), "ID_M R" NUMBER(10), "TELEFON" VARCHAR2(15) NOT NULL, CONSTRAINT "SALARIATI_PK" PRIMARY KEY ("ID") ) CREATE SEQUENCE "SALARIATI_SEQ" CREATE TRI ER "BI_SALARIATI" BEFORE INSERT ON "SALARIATI" FOR EACH RO! BE IN SELECT "SALARIATI_SEQ""NE#TVAL INTO $NE!"ID FROM DUAL% END% ALTER TABLE "SALARIATI" ADD CONSTRAINT "SALARIATI_FK" FOREI N KEY ("ID_FLA") REFERENCES "FILIALE" ("ID") ON DELETE SET NULL ALTER TABLE "SALARIATI" ADD CONSTRAINT SALARIATI_CK1 CHECK (( TIP_SLT*+A T+ AND SALARIU IS NOT NULL AND FUNCTIE IS NOT NULL AND TARIF_ORAR IS NULL AND SPECIALI'ARE IS NULL) OR (TIP_SLT*+CLT+ AND SALARIU IS NULL AND FUNCTIE IS NULL AND TARIF_ORAR IS NOT NULL AND SPECIALI'ARE IS NOT NULL) ) ALTER TABLE "SALARIATI" ADD CONSTRAINT "SALARIATI_CON" FOREI N KEY ("ID_M R") REFERENCES "SALARIATI" ("ID")

CREATE TABLE "ANUNTURI" ( "ID" NUMBER(10) NOT NULL, "DATA_INRE ISTRARE" DATE NOT NULL, "DATA_APARITIE" DATE NOT NULL, "RE IM" VARCHAR2(20) NOT NULL, "DESCRIERE" VARCHAR2(50), "ID_CTE" NUMBER(10) NOT NULL, "ID_CET" NUMBER(10) NOT NULL, "ID_SLT" NUMBER(10) NOT NULL, CONSTRAINT "ANUNTURI_PK" PRIMARY KEY ("ID") ) CREATE SEQUENCE "ANUNTURI_SEQ" CREATE TRI ER "BI_ANUNTURI" BEFORE INSERT ON "ANUNTURI" FOR EACH RO! BE IN SELECT "ANUNTURI_SEQ""NE#TVAL INTO $NE!"ID FROM DUAL% END% ALTER TABLE "ANUNTURI" ADD CONSTRAINT "ANUNTURI_FK" FOREI N KEY ("ID_CTE") REFERENCES "CATE ORII" ("ID") ON DELETE CASCADE ALTER TABLE "ANUNTURI" ADD CONSTRAINT "ANUNTURI_FK2" FOREI N KEY ("ID_CET") REFERENCES "CLIENTI" ("ID") ON DELETE CASCADE ALTER TABLE "ANUNTURI" ADD CONSTRAINT "ANUNTURI_FK&" FOREI N KEY ("ID_SLT") REFERENCES "SALARIATI" ("ID") ON DELETE CASCADE

Constrngeri pentru relaii netransferabile


Se creeaz un trigger pentru relaia netransferabil CLIENT ANUN, cu urmt rul c ! S"L#
CREATE OR REPLACE TRI ER CET_ANT_NETRANSFERABIL AFTER UPDATE OR DELETE ON ANUNTURI FOR EACH RO! BE IN IF($NE!"ID_CET,-$OLD"ID_CET) THEN RAISE_APPLICATION_ERROR (.20001, +RELATIA CLIENTI.ANUNTURI ESTE NETRANSFERABILA"+)% END IF% END%
ALTER TRI ER "CET_ANT_NETRANSFERABIL" ENABLE%

You might also like