Home » Articole » Articole » Calculatoare » Programare » SQL » Crearea unui tabel simplu în SQL

Crearea unui tabel simplu în SQL

postat în: SQL 0

Mai mult decât o foaie de calcul

Să începem cu un exemplu simplu. Să presupunem că dorim să colectăm informații despre oameni – numele lor, locul nașterii și alte elemente. La început ne-am putea gândi să colectăm aceste date într-o simplă foaie de calcul. Dar dacă ajungem o companie de succes și trebuie să gestionăm milioane de articole de date? O foaie de calcul ar putea gestiona această cantitate imensă de informații? Ar putea mai mulți angajați sau programe să introducă simultan date noi, să le șteargă sau să le modifice? Desigur că nu. Și acesta este unul dintre avantajele remarcabile ale unui sistem de gestionare a bazelor de date (SGBD) față de un program de foaie de calcul: ne putem imagina structura unui tabel ca o foaie de calcul simplă – dar accesul la acesta este organizat intern într-un mod în care cantități uriașe de date pot fi accesate de mulți utilizatori în același timp.

Pe scurt, se poate spune că se poate imagina un tabel ca o foaie de calcul optimizată pentru date în masă și acces simultan.

Conceperea structurii

Pentru a menține controlul și pentru a asigura performanțe bune, tabelele sunt supuse unor reguli stricte. Fiecare coloană de tabel are un nume fixat, iar valorile fiecărei coloane trebuie să fie de același tip de date. În plus, este foarte recomandat – deși nu este obligatoriu – ca fiecare rând să poată fi identificat printr-o valoare unică. Coloana în care se află această valoare de identificare se numește Cheia primară (Primary Key). Aici, îl numim întotdeauna id. Dar toată lumea este liberă să aleagă un nume diferit. Mai mult, putem folosi concatenarea mai multor coloane ca Primary Key.

La început trebuie să decidem următoarele întrebări:

  1. Ce date despre persoane (în acest prim exemplu) vrem să salvăm? Desigur, există o mulțime de informații despre persoane (de exemplu, culoarea ochilor, semnul zodiacal, …), dar fiecare aplicație are nevoie doar de unele dintre ele. Trebuie să decidem care dintre ele sunt de interes în contextul nostru concret.
  2. Ce nume atribuim datelor selectate? Fiecare referință identificată intră într-o coloană a tabelului, care trebuie să aibă un nume.
  3. De ce tip sunt datele? Toate valorile datelor dintr-o coloană trebuie să fie de același tip. Nu putem pune un șir arbitrar într-o coloană de tipul de date DATE.

În exemplul nostru, decidem să salvăm prenumele, numele, data și locul nașterii, numărul asigurării sociale și greutatea persoanei. Evident, data nașterii este de tip DATE, greutatea este un număr, iar toate celelalte sunt un fel de șiruri. Pentru șiruri, există o distincție între cele care au o lungime fixă ​​și cele în care lungimea variază de obicei foarte mult de la rând la rând. Primul se numește CHAR (<n>), unde <n> este lungimea fixă, iar celelalte VARCHAR (<n>), unde <n> este lungimea maximă.

Stabilește deciziile

Deciziile luate anterior trebuie exprimate într-un limbaj ușor de înțeles. Acest limbaj este SQL, care acționează ca interfață între utilizatorii finali – sau programe speciale – și SGBD.

-- liniile de comentarii încep cu două semne minus consecutive '--'
CREATE TABLE person (
  -- definește coloane (nume / tip / valoare implicită / anulabil)
  id             DECIMAL      NOT NULL,
  firstname      VARCHAR(50)  NOT NULL,
  lastname       VARCHAR(50)  NOT NULL,
  date_of_birth  DATE,
  place_of_birth VARCHAR(50),
  ssn            CHAR(11),
  weight         DECIMAL DEFAULT 0 NOT NULL,
  -- selectați una dintre coloanele definite ca cheie primară și
  -- găsiți un nume semnificativ pentru constrângerea cheii primare: „person_pk” poate fi o alegere bună 
  CONSTRAINT person_pk PRIMARY KEY (id)
);

Alegem person ca nume al tabelului, care este format din șapte coloane. Coloanei id i se atribuie rolul cheii primare. Putem stoca exclusiv cifre în coloanele id și weight, șiruri cu o lungime de până la 50 de caractere în firstname, lastname și place_of_birth, datele în date_of_birth și un șir de exact unsprezece caractere în ssn. Expresia NOT NULL face parte din definiția id, firstname, lastname și weight. Aceasta înseamnă că, în fiecare rând, trebuie să existe o valoare pentru aceste patru coloane. Nu este posibilă stocarea niciunei valori în niciuna dintre acele coloane – dar șirul de 8 caractere „fără valoare” sau cifra „0” sunt permise deoarece sunt valori. Sau să o spunem invers: este posibil să omitem valorile date_of_birth, place_of_birth și ssn.

Definiția unei chei primare se numește „constrângere” (mai târziu, vom cunoaște mai multe tipuri de constrângeri). Fiecare constrângere ar trebui să aibă un nume – este person_pk în acest exemplu.

Rezultatul

După executarea comenzii „CREATE TABLE” de mai sus, SGBD a creat un obiect pe care îl putem imagina similar cu următorul tabel:

id firstname lastname date_of_birth place_of_birth ssn weight

Acest tabel prezintă 4 rânduri. Prima linie reprezintă numele coloanelor – nu valorile! Următoarele 3 linii au doar scop demonstrativ. Dar în tabelul bazei de date, în prezent nu există un singur rând! Este complet gol, fără rânduri deloc, fără valori deloc! Singurul lucru care există în baza de date este structura tabelului.

Înapoi la Start

Poate că vrem să ștergem tabelul într-o zi. Pentru a face acest lucru, putem folosi comanda DROP. Elimină tabelul în totalitate: toate datele și structura completă sunt elininate

DROP TABLE person;

Nu confundați comanda DROP cu comanda DELETE. Comanda DELETE șterge doar rândurile – eventual pe toate. Cu toate acestea, tabelul în sine, care deține definiția structurii, este păstrat.

Include texte traduse din Wikibooks

Excel - Ghid pentru începători
Excel – Ghid pentru începători

Acest ghid este destinat să vă ajute să învățați și să lucrați cu Microsoft Excel. Se bazează pe utilizarea Excel 2016 pe un computer Windows, dar conceptele și instrumentele acoperite rămân destul de consistente cu unele versiuni mai vechi de … Citeşte mai mult

Nu a fost votat $0.00 Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Ghid WordPress pentru începători
Ghid WordPress pentru începători

Descoperă arta gestionării site-urilor web cu WordPress!

Nu a fost votat $2.99$5.48 Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Inteligența, de la originile naturale la frontierele artificiale - Inteligența Umană vs. Inteligența Artificială
Inteligența, de la originile naturale la frontierele artificiale – Inteligența Umană vs. Inteligența Artificială

Inteligența: redefinirea frontierelor. Explorarea Inteligenței Umane și Artificiale. Descoperă, învață și imaginează-ți viitorul.

Nu a fost votat $4.99$10.86 Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *