TOP

SQL-Lecția 14. Crearea tabelelor (CREATE TABLE)

Limbajul SQL este folosit nu numai pentru procesarea informațiilor, ci și pentru efectuarea tuturor operațiunilor cu baze de date și tabele, inclusiv crearea și lucrul cu tabele.

Există două moduri de a crea tabele folosind:

  • Interfață vizuală - majoritatea SGBD-urilor au o interfață vizuală pentru crearea și gestionarea tabelelor interactive;
  • Instrucțiuni SQL - tabelele pot fi manipulate folosind instrucțiuni SQL direct.
  • Este demn de remarcat faptul că atunci când utilizați setul de instrumente interactiv DBMS, de fapt, toată munca este realizată de instrucțiuni SQL, adică interfața însăși creează aceste comenzi imperceptibil pentru utilizator (acest lucru este similar cu înregistrarea unei macrocomenzi în Excel, când macro recorder-ul vă înregistrează acțiunile și le transformă în comenzi VBA).


    1. Crearea de tabele

    Pentru a crea tabele în mod programatic, utilizați operatorul CREATE TABLE. Pentru aceasta, trebuie să specificați următoarele date:

  • numele tabelului, care este specificat după cuvântul cheie CREATE TABLE;
  • numele și definițiile coloanelor din tabel separate prin virgule;
  • în unele SGBD se cere, de asemenea, să fie specificată locația tabelului.
  • Să creăm un tabel nou și să-i denumim Customers:

    CREATE TABLE Customers (
    ID             CHAR(10) NOT NULL Primary key,
    Custom_name    CHAR(25) NOT NULL,
    Custom_address CHAR(25) NULL,
    Custom_city    CHAR(25) NULL,
    Custom_Country CHAR(25) NULL,
    ArcDate        CHAR(25) NOT NULL, DEFAULT NOWO)
    

    Da, mai întâi precizăm numele noului tabel, apoi în paranteze listăm coloanele pe care le vom crea, iar numele lor nu pot fi repetate în cadrul aceluiași tabel. După numele coloanelor, se specifică tipul de date pentru fiecare câmp (CHAR(10)), apoi specificăm dacă câmpul poate conține valori goale (NULL sau NOT NULL) și câmpul care va fi cheia primară (Primary key) trebuie de asemenea specificat.

    Limbajul SQL vă permite de asemenea să definiți o valoare implicită pentru fiecare câmp, adică dacă utilizatorul nu specifică o valoare pentru un anumit câmp, aceasta va fi setată automat de SGBD. Valoarea implicită este definită de cuvântul cheie DEFAULT la definirea coloanelor cu operatorul CREATE TABLE.

    2. Actualizarea tabelelor

    Pentru a schimba tabelul în SQL, se folosește operatorul ALTER TABLE. Când utilizați acest operator, ar trebui să introduceți următoarele informații:

  • numele tabelului pe care vrem să-l schimbăm;
  • o listă de modificări pe care dorim să le facem.
  • De exemplu, să adăugăm o nouă coloană la tabelul Sellers, în care vom specifica telefonul vânzătorului:

    ALTER TABLE Sellers  
    ADD Phone CHAR (20)
    

    Pe lângă adăugarea de coloane, le putem și elimina. Să ștergem acum câmpul Phone. Pentru a face acest lucru, vom scrie următoarea interogare:

    ALTER TABLE Sellers 
    DROP COLUMN Phone
    

    3. Ștergerea tabelelor

    Tabelele sunt șterse folosind operatorul DROP TABLE. Pentru a șterge tabelul Sellers_new, putem scrie următoarea interogare:

    DROP TABLE Sellers_new
    

    Multe SGBD-uri au reguli care împiedică ștergerea tabelelor care sunt deja legate la alte tabele. Dacă se aplică aceste reguli și ștergeți un astfel de tabel, DBMS blochează operația de ștergere până când relația este ștearsă. Astfel de măsuri împiedică ștergerea accidentală a tabelelor necesare.