logo



Problema 15

Evidența autorilor cărţilor dintr-o bibliotecă se realizează prin intermediul tabelului Autori cu structura Id_autor (N,5), Nume (T,50), Prenume (T,50), Autor_roman (Y/N), Descriere (T,200).
Cerinţe:
a) Creaţi structura tabelului Autori;
b) Introduceți următoarele înregistrări în tabel:

Id_autor

Nume

Prenume

Autor_roman

Descriere

32

Eminescu

Mihai

Y

Poet, prozator si jurnalist, cea mai importanta voce poetica din literatura romana.

54

Caragiale

Ion-Luca

Y

Dramaturg, nuvelist, pamfletar, poet, scriitor, director de teatru si ziarist roman.

31

Eco

Umberto

N

Scriitor italian, editor si filosof si un foarte cunoscut semiotician.

322

Slavici

Ioan

Y

Scriitor, jurnalist si pedagog roman, membru corespondent al Academiei Romane.

35

Alecsandri

Vasile

Y

Poet, dramaturg, folclorist, om politic, membru fondator al Academiei Romane.

56

Shakespeare

William

N

Dramaturg şi poet englez, considerat cel mai mare scriitor englez.

c) Afişaţi autorii de naţionalitate română;
d) Folosind o interogare (secvenţă de instrucţiuni), ştergeţi autorii care sunt poeţi (în câmpul descriere apare cuvântul „poet”).

Rezolvare:

# a)

CREATE TABLE Autori (
    Id_autor INT(5),
    Nume VARCHAR(50),
    Prenume VARCHAR(50),
    Autor_roman CHAR(1), -- 'Y' sau 'N'
    Descriere VARCHAR(200)
);

# b)

INSERT INTO Autori (Id_autor, Nume, Prenume, Autor_roman, Descriere)
VALUES
(32, 'Eminescu', 'Mihai', 'Y', 'Poet, prozator si jurnalist, cea mai importanta voce poetica din literatura romana.'),
(54, 'Caragiale', 'Ion-Luca', 'Y', 'Dramaturg, nuvelist, pamfletar, poet, scriitor, director de teatru si ziarist roman.'),
(31, 'Eco', 'Umberto', 'N', 'Scriitor italian, editor si filosof si un foarte cunoscut semiotician.'),
(322, 'Slavici', 'Ioan', 'Y', 'Scriitor, jurnalist si pedagog roman, membru corespondent al Academiei Romane.'),
(35, 'Alecsandri', 'Vasile', 'Y', 'Poet, dramaturg, folclorist, om politic, membru fondator al Academiei Romane.'),
(56, 'Shakespeare', 'William', 'N', 'Dramaturg şi poet englez, considerat cel mai mare scriitor englez.');

SELECT * from Autori;

# c)

SELECT * FROM Autori
WHERE Autor_roman = 'Y';
    
# d)

DELETE FROM Autori
WHERE Descriere LIKE '%poet%';

/*Această interogare va șterge toate rândurile unde textul 
din Descriere conține cuvântul "poet", indiferent de poziția sa în text.*/

SELECT * from Autori;

 

 



Copyright © 2016 Kalytheo