prezentare generala sql

23
Baze de date Limbajul SQL

Upload: ralluca9

Post on 17-Sep-2015

71 views

Category:

Documents


2 download

DESCRIPTION

Introducere in SQL

TRANSCRIPT

  • Baze de dateLimbajul SQL

  • ObiectiveComenzi de baz i funcii SQLUtilizarea limbajului SQL pentru administrarea datelorUtilizarea limbajului SQL pentru manipularea datelorUtilizarea limbajului SQL pentru a interoga o baz de date pentru a extrage informaii utile

  • Ce este SQL?Limbaj standard de descriere a datelor i de acces la informiile din bazele de date, dezvoltat de IBMLimbaj de interogare a bazelor de date relaionaleLimbaj comun pentru o varietate de SGBD-uri

  • Termeni utilizai de SQLtabel (table) utilizat pentru a desemna o relaie;linie (row) utilizat pentru a desemna un tuplu;coloan (column) utilizat pentru a desemna un atribut.

  • Funciile SQLFunciile SQL se mpart n dou categorii:

    Data definition language (DLL) component de descriere a datelor;

    Data manipulation language (DML) + componenta de manipulare a datelor.

  • Introducere n SQLLimbajul SQL este relativ uor de nvat;Vocabularul de baz are mai puin de 100 de cuvinte;Limbaj neproceduralExist mai multe versiuni ale standardului SQL.

  • Structura lexical a limbajului SQLElementele unei instruciuni sunt:cuvintele cheie, dintre care fac parte comenzile, operatorii, clauzele;identificatorii;constantele;caracterele speciale.

  • Operatorii SQLSQL are urmtorii operatori:operatori aritmetici binari;operatori binari de comparaie;operatori de comparaie;operatori logici;operatori relaionali.

  • Operatorii SQLOperatori aritmetici binari:+-*% modulo^ ridicarea la putere> deplasare la dreapta

  • Operatorii SQLOperatori binari de comparaie:< >== sau != diferit

  • Operatorii SQLOperatori de comparaie:BETWEEN Exemplu: A BETWEEN min AND max IN Exemplu: A IN (v1,...,vn) compar A cu o list de valoriIS NULLIS NOT NULLLIKE Exemplu: A LIKE model_ir

  • Operatorii SQLOperatori logici:ANDORNOT Returneaz o valoare logic TRUE, FALSE sau NULL.

  • Operatorii SQLOperatori relaionali:UNION INTERSECT MINUS

  • Funcii definite n SQLFuncii agregat: COUNT(), SUM(), MAX(), MIN(), AVG();Funcii scalarenumerice: sin(), cos(), tg(), ctg(), log(), ln(), lg(), pow(), etc.funcii pentru iruri de caractere: CONCAT(), LOWER(), UPPER(), LENGTH(), REPLACE(), SUBSTR();funcii pentru data calendaristic: DAY(), MONTH(),YEAR(), DATE();funcii de conversie:TO_CHAR(), TO_NUMBER(), TO_DATE()

  • Limbajul de definire a datelor DLLDLL-ul permite crearea i tergerea tabelelor.

    Principalele instruciuni:CREATE DATABASESCREATE TABLEALTER TABLEDROP TABLE

  • Limbajul de definire a datelor DLLComenzi pentru crearea unei BD

    CREATE DATABASE nume_baza;Exemplu: S se creeze baza de date AGENTIA_IMOBILIARA.

    CREATE DATABASE AGENTIA_IMOBILIARA;

  • Limbajul de definire a datelor DLLComenzi pentru crearea tabelelor:indicnd cheia la nivel de coloanindicnd cheile la nivel de tabel

    1. indicnd cheia la nivel de coloan CREATE TABLE nume_tabela;Exemplu: S se creeze relaia JUDETE (simbol_judet, nume_judet).CREATE TABLE JUDETE (simbol_judet CHAR(2) PRIMARY KEY, nume_judet VARCHAR(30));

  • Limbajul de definire a datelor DLL2. indicnd cheia la nivel de tabel Exemplu: S se creeze relaia LOCALITATI (cod_loc, simbol_judet, nume_loc).CREATE TABLE LOCALITATI (cod_loc VARCHAR(7),simbol_judet CHAR (2), nume_loc VARCHAR (50),PRIMARY KEY (cod_loc, simbol_judet),FOREIGN KEY (simbol_judet)REFERENCES JUDETE(simbol_judet));

  • Limbajul de definire a datelor DLLComenzi pentru schimbarea numelui unei relaiiRENAME nume_tabela TO nume_tabela_nou;

    Exemplu: S se modifice numele relaiei LOCALITATI_CLUJ n LOC_CJ.

    RENAME TABLE LOCALITATI_CLUJ TO LOC_CJ;

  • Limbajul de definire a datelor DLLComenzi pentru tergerea unei relaiiDROP TABLE nume_tabela;

    Exemplu: S se tearg relaia ANGAJAI.

    DROP TABLE ANGAJATI;

  • Limbajul de definire a datelor DLLComenzi pentru modificarea structurii unei relaii:extinderea schemei relaiei prin adugarea de noi atribute;restrngerea schemei unei relaii prin tergerea unor atribute;modificarea numelui i/sau tipului unui atribut din cadrul relaiei.Comanda de modificare a unei relaii este:ALTER TABLE nume_tabel ...

  • Limbajul de definire a datelor DLLExemple:S se adauge atributul regiunea la relaia LOCALITATI.ALTER TABLE LOCALITATI ADD (regiunea VARCHAR(10));b) S se restrng relaia LOCALITATI prin tergerea atributului regiunea.ALTER TABLE LOCALITATI DROP regiunea;c) S se modifice tipul atributului pret_unitar din tabela PRODUSE din INTEGER n DECIMAL.ALTER TABLE PRODUSE MODIFY pret_unitar DECIMAL (10,2) ;

  • Limbajul de manipulare a datelor DMLDML-ul permite executarea de interogri, actualizri, inserri i tergeri de tupluri.

    Principalele instruciuni:INSERT INTOUPDATEDELETESELECT