-- !!!!!!!! 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)