Laborator 3

Limbajul de modificare a datelor: Operatiuni de inserare, modificare, stergere a inregistrarilor in baza de date

Subiectul acestei sedinte este invatarea unor elemente de limbaj de modificare a datelor. Se definesc, modifica si distrug baze de date, tabele, coloane.Operatiuni de inserare, modificare, stergere a inregistrarilor in baza de date

Exercitii


# Creare 2 tabele

#Student

CREATE TABLE student
(cod_student int unique auto_increment PRIMARY KEY,
 nume char(20),
 prenume char(20),
 data_nastere DATE);

#Profesor

  CREATE TABLE profesor
 (cod_profesor int unique auto_increment PRIMARY KEY,
 nume char(20),
 prenume char(20),
 adresa char(50),
 data_nastere date,
 grad_didactic int not null default 1);

 # Inserarea de date in tabela student

 # O singura inregistrare
 INSERT INTO student SET nume='Ion', prenume='Vasile';
 #Mai multe inregistrari
 INSERT INTO student (nume, prenume, data_nastere) VALUES
 ('Marin','Adina','1998-5-8'),
 ('Alexandrescu','Ioana','1999-8-5'),
 ('Popescu','Viorel','1999-6-6');

 # Inserarea de date in tabela profesor

 # O singura inregistrare
 INSERT INTO profesor SET nume='Popa', prenume='Marin';
 #Mai multe inregistrari
 INSERT INTO profesor (nume, prenume, adresa, data_nastere, grad_didactic) VALUES
 ('Marin','Dumitru','Bucuresti','1977-5-8', 2),
 ('Popescu','Dorin','Bucuresti','1981-8-5', 1),
 ('Marinescu','Diana','Bucuresti','1967-6-6', 2);


 #Modificati o inregistrare
 UPDATE student SET nume='Marian' where prenume = 'Adina';
 UPDATE student SET prenume='Andrei' where nume='Popescu';
 UPDATE student SET data_nastere='1991-6-2' where data_nastere is null;
 # Sau mai multe
 UPDATE student SET data_nastere='1992-5-5';

 #Stergeti o inregistrare
 DELETE FROM student WHERE nume='Marian';
 #Conditie de selectie incorecta, va da o eroare
 DELETE FROM student WHERE nume='Alexandru';
 #Stergeti mai multe inregistrari; comanda sterge 2 inregistrari din tabela student; LIMIT va limita efectul comenzii la
 #un numar limitat de inregistrari;
 DELETE FROM student LIMIT 2;


Exercitii suplimentare

  1. Adaugati 3 inregistrari la tabela profesorilor (completand si adresa, si gradul didactic)
  2. Stergeti 1 inregistrare din tabela profesorilor
  3. Modificati 1 inregistrare din tabela profesorilor, adaugand adresa unui profesor fara adresa
  4. Adaugati 3 inregistrari in tabela studentilor
  5. Copiati datele unui student din tabela studentilor in cea a profesorilor. Pentru aceasta, mai intai copiati inregistrarea cu acest student din tabela studentilor in aceea a profesorilor, apoi stergeti inregistrarea respectiva din tabela studentilor. Pentru profesorul nou creat prin aceasta operatie, adaugati-i si un grad didactic
  6. Adaugati,pentru profesorii fara adresa, adresa 'Bucuresti, Blvd. Magheru'

Nota: pentru verificare, folositi o comanda ca:

 SELECT * FROM student;
 SELECT * FROM profesor;