Está en la página 1de 4

Scenariul de creare a bazei de date

-- !!!!!!!! Atentie la unele functii, de ex. OBJECT_ID in paranteze litera N


-- !!!! inseamna , ca numele poate fi si in UNICODE
USE master
GO
IF EXISTS (SELECT 'True' FROM sys.databases WHERE name =
'Colegiu')
BEGIN
DROP DATABASE Colegiu
END
GO
create database colegiu
GO
-- Crearea tabelei Catedre
USE colegiu
GO
CREATE TABLE Catedre
(
idcatedre Int PRIMARY KEY
,nmcatedre Char(30)UNIQUE
,idprofesor Int
)
GO
-- Crearea tabelei Objstud
CREATE TABLE objstud
(
idobjstud Int PRIMARY KEY
,nmobjstud Char(30)UNIQUE
,idcatedre Int DEFAULT 1
)
GO
-- Crearea tabelei Profesor
CREATE TABLE profesor
(
idprofesor Int PRIMARY KEY
,nmprofesor Char(30) UNIQUE
)
GO
-- Crearea tabelei ObjStGr
CREATE TABLE objstgr
(
idobjstgr Int PRIMARY KEY
,idgrupa Int
,idobjstud Int
,idprofesor Int
)
GO
-- Crearea tabelei Grupa
CREATE TABLE grupa
(
idgrupa Int PRIMARY KEY
,nmgrupa Char(30)UNIQUE
,anadm Int
,idprofesor Int
,idspec Int
)
GO
-- Crearea tabelei Student
CREATE TABLE student
(
idstudent Int PRIMARY KEY
,nmstud Char(20)
,prenstud Char(20)
,patrstud Char(30)
,sexstud Char(1) CHECK (sexstud='m' or sexstud='f')
,Ncarnet Char(10)
,DataNs Date
,GSM Char(10)
,idgrupa Int
,idlocalit Int
)
GO
--* Crearea tabelei Raion
CREATE TABLE raion
(
idraion Int PRIMARY KEY
,nmraion Char(30)UNIQUE
)
GO
--* Crearea tabelei Spec
CREATE TABLE spec
(
idspec Int PRIMARY KEY
,nmspec Char(30) UNIQUE
)
GO
--* Crearea tabelei Localit
CREATE TABLE localit
(
idlocalit Int PRIMARY KEY
,nmlocalit Char(30) UNIQUE
,idraion Int
)
GO
--* Crearea tabelei notele
CREATE TABLE notele
(
idnotele Int PRIMARY KEY
,idstudent Int
,idobjstud Int
,data Date
,nota Numeric(5,2) CHECK (1<=nota and nota<=10)
)
GO
--***** Crearea indecsilor secundari si
--**** a legaturilor dintre tabele
--* Este necesara ordinea de mai jos
--*
--******** * Crearea legaturii Catedre - profesor
ALTER TABLE catedre
ADD CONSTRAINT FK_Catedre_idprofesor
FOREIGN KEY (idprofesor) REFERENCES profesor (idprofesor)
--******* * Crearea legaturii Objstud - Catedre
ALTER TABLE objstud
ADD CONSTRAINT FK_Objstud_idcatedre
FOREIGN KEY (idcatedre) REFERENCES catedre (idcatedre)
-- ********** * Crearea legaturii Grupa - profesor
ALTER TABLE grupa
ADD CONSTRAINT FK_Grupa_idprofesor
FOREIGN KEY (idprofesor) REFERENCES profesor (idprofesor)
-- *********** * Crearea legaturii Grupa - Spec
ALTER TABLE grupa
ADD CONSTRAINT FK_Grupa_idspec
FOREIGN KEY (idspec) REFERENCES spec (idspec)
-- ********** * Crearea legaturii Objstgr - profesor
ALTER TABLE objstgr
ADD CONSTRAINT FK_Objstgr_idprofesor
FOREIGN KEY (idprofesor) REFERENCES profesor (idprofesor)
-- ********** * Crearea legaturii Objstgr - Grupa
ALTER TABLE objstgr
ADD CONSTRAINT FK_Objstgr_idgrupa
FOREIGN KEY (idgrupa) REFERENCES grupa (idgrupa)
-- ************ * Crearea legaturii Objstgr - Objstud
ALTER TABLE objstgr
ADD CONSTRAINT FK_Objstgr_idobjstud
FOREIGN KEY (idobjstud) REFERENCES objstud (idobjstud)
-- ********* * Crearea legaturii Student - Grupa
ALTER TABLE student
ADD CONSTRAINT FK_Student_idgrupa
FOREIGN KEY (idgrupa) REFERENCES grupa (idgrupa)
-- ********** * Crearea legaturii Student - Localit
ALTER TABLE student
ADD CONSTRAINT FK_Student_idlocalit
FOREIGN KEY (idlocalit) REFERENCES localit (idlocalit)
-- ********** * Crearea legaturii Localit - Raion
ALTER TABLE localit
ADD CONSTRAINT FK_Localit_idraion
FOREIGN KEY (idraion) REFERENCES raion (idraion)
-- ******** * Crearea legaturii notele - student si notele
objstud
ALTER TABLE notele
ADD CONSTRAINT FK_Notele_idstudent
FOREIGN KEY (idstudent) REFERENCES student (idstudent)
ALTER TABLE notele
ADD CONSTRAINT FK_Notele_idobjstud
FOREIGN KEY (idobjstud) REFERENCES objstud (idobjstud)
-- **********
-- ****
--* inserarea profesor

INSERT INTO profesor (idprofesor,nmprofesor) VALUES (1,'Pasecinic I.')


INSERT INTO profesor (idprofesor,nmprofesor) VALUES (2,'Zavadschi V.')
-- * inserarea spec
INSERT INTO spec (idspec,nmspec) VALUES (1,'Informatica')
INSERT INTO spec (idspec,nmspec) VALUES (2,'Secretariat si Birotica')

-- * inserarea raion

INSERT INTO raion (idraion,nmraion) VALUES (1,'Anenii Noi')


-- * inserarea grupa
INSERT INTO grupa (idgrupa,nmgrupa,anadm,idprofesor,idspec)
VALUES (1,'I-1024',2010,1,1)
INSERT INTO grupa (idgrupa,nmgrupa,anadm,idprofesor,idspec)
VALUES (2,'I-1022',2010,2,1)
INSERT INTO grupa (idgrupa,nmgrupa,anadm,idprofesor,idspec)
VALUES (3,'I-1021',2010,3,1)
VALUES (10,'M-1111',2011,10,5)

--* inserarea catedre

INSERT INTO catedre (idcatedre,nmcatedre,idprofesor)


VALUES (1,'Informatica Aplicata',1)
INSERT INTO catedre (idcatedre,nmcatedre,idprofesor)
VALUES (2,'Informatica',3)
INSERT INTO catedre (idcatedre,nmcatedre,idprofesor)
VALUES (9,'Matematica',6)

-- * inserarea objstud

INSERT INTO objstud (idobjstud,nmobjstud,idcatedre)


VALUES (1,'Limba romana',8)
INSERT INTO objstud (idobjstud,nmobjstud,idcatedre)
VALUES (2,'SGBD',1)

-- * inserarea Localit

INSERT INTO localit (idlocalit,nmlocalit,idraion)


VALUES (1,'Rascaieti',2)
INSERT INTO localit (idlocalit,nmlocalit,idraion)
VALUES (2,'Saptebani',14)
-- * inserarea Objstgr
INSERT INTO Objstgr (idobjstgr,idprofesor,idobjstud,idgrupa) VALUES (1,1,1,1)

También podría gustarte