Limbajul de programare SQL pentru începători. De ce ai nevoie. Ce proceduri pot fi efectuate folosind acest limbaj?

De la autor:Ți-au spus ceainic? Ei bine, această problemă poate fi rezolvată! Fiecare samovar a fost cândva un ceainic! Sau fiecare profesionist a fost cândva un samovar? Nu, ceva nu este în regulă din nou! În general, MySQL este pentru începători.

De ce au nevoie de MySQL neobișnuiții?

Dacă intenționați serios să vă conectați viața cu Internetul, atunci chiar de la primii pași în „web” veți întâlni acest SGBD. MySQL poate fi numit cu ușurință sistemul de gestionare a bazelor de date „tot-Internet”. Nicio resursă mai mult sau mai puțin serioasă nu se poate face fără ea este prezentă în panoul de administrare al fiecărei găzduiri. Și mai presus de toate CMS popularși chiar și motoare „de casă” au fost construite cu participarea sa.

În general, nu te poți descurca fără această platformă. Dar pentru a-l studia vei avea nevoie și de abordarea corectă, instrumentele potrivite și, cel mai important, dorința și răbdarea. Sper că ai destule ultimele ingrediente. Și fiți pregătiți pentru ca creierul să fiarbă și să se scurgă abur din cap, ca dintr-un fierbător adevărat

Dar MySQL este atât de dificil pentru nenorociri doar dacă începi să-l înveți incorect. Tu și cu mine nu vom face o astfel de greșeală și vom începe cunoștințele noastre cu această tehnologie de la bun început.

Noțiuni de bază

Mai întâi, să trecem peste conceptele de bază pe care le vom aminti în această publicație:

Baza de date (DB) este unitatea componentă principală a unui SGBD. Baza de date include tabele care constau din coloane și înregistrări (rânduri). Celulele formate la intersecție conțin date structurate de un anumit tip.

DBMS (sistem de management al bazelor de date) – un set de toate module software pentru administrarea bazei de date.

SQL - limbaj interogări structurate, cu ajutorul căruia dezvoltatorul „comunica” cu nucleul DBMS (server). Ca orice limbaj de programare, SQL are propria sa sintaxă, un set de comenzi și operatori și tipuri de date acceptate.

Cred că cunoştinţele teoretice sunt suficiente pentru a începe. Vom „colora” golurile lipsă în teorie cu practică. Acum tot ce mai rămâne este să alegeți instrumentul software potrivit.

Selectarea instrumentului potrivit

După ce am scotocit prin întreaga gamă de shell-uri MySQL pentru începători, mi-am dat seama că pur și simplu nu există. Toate produse software Pentru a administra un SGBD, trebuie să aveți deja server instalat DB. În general, am decis încă o dată să nu inventez „scooterul” și am optat pentru pachetul intern Denwer. Îl puteți descărca de pe site-ul oficial.

Acesta include deja toate componentele unui DBMS, permițând unui începător să înceapă o cunoaștere practică cu MySQL imediat după o instalare simplă și simplă. În plus, Denwer include mai multe instrumente necesare unui dezvoltator începător: server local,PHP.

Primii pasi

Nu voi descrie procesul de instalare a setului „domnului”, deoarece totul se întâmplă automat acolo. După lansarea instalării, aveți doar timp cheile necesare culege Exact ceea ce aveți nevoie în versiunea MySQL pentru manechine.

Când procesul de instalare este finalizat, porniți serverul local, așteptați câteva secunde. După aceea, apelează bara de adresa browser localhost.

Pe pagina „Ura, funcționează!” urmați unul dintre linkurile prezentate în imagine. După care veți fi dus la phpMyAdmin - un shell pentru administrarea bazelor de date.

Urmând linkul http://downloads.mysql.com/docs/world.sql.zip, veți descărca un exemplu de bază de date de testare de pe site-ul oficial MySQL. Accesați din nou phpMyAdmin, în meniul principal din partea de sus, accesați fila „Import”. În fereastra Import în curent, în prima secțiune (Fișier de import), setați valoarea la Răsfoiți computerul.

În fereastra Explorer, selectați arhiva cu exemplul de bază de date descărcată. Nu uitați să faceți clic pe „Ok” în partea de jos a ferestrei principale.

Vă sfătuiesc să nu modificați valorile parametrilor specificate pentru moment. Acest lucru poate duce la afișarea incorectă a datelor sursă importate. Dacă sistemul phpMyAdmin generează o eroare prin care nu poate recunoaște algoritmul de comprimare a bazei de date, atunci dezarhivați-l și repetați întregul proces de import de la început.

Dacă totul a mers bine, atunci va apărea un mesaj de program în partea de sus că importul a avut succes, iar un altul (cuvânt) va apărea în stânga în lista bazei de date.

Să ne uităm la structura sa din interior, astfel încât să vă puteți imagina mai clar cu ce aveți de a face.

Faceți clic pe numele bazei de date MySQL pentru începători. Sub ea va fi afișată o listă de tabele din care constă. Faceți clic pe una dintre ele. Apoi du-te la meniul de sus"Structura". Zona principală de lucru va afișa structura tabelului: numele tuturor coloanelor, tipurile de date și toate atributele.

Astăzi, cursurile SQL „pentru manechin” devin din ce în ce mai populare. Acest lucru poate fi explicat foarte simplu, deoarece în lumea modernă Din ce în ce mai des puteți găsi așa-numitele servicii web „dinamice”. Se disting printr-un shell destul de flexibil și se bazează pe Toți programatorii începători care decid să dedice site-uri web, în ​​primul rând să se înscrie la cursuri SQL „pentru manechin”.

De ce să înveți această limbă?

În primul rând, SQL este predat cu un scop creație ulterioară o mare varietate de aplicații pentru unul dintre cele mai populare motoare de blog astăzi - WordPress. După ce a trecut mai multe lecții simple puteți crea deja interogări de orice complexitate, ceea ce nu face decât să confirme simplitatea acestui limbaj.

Ce este SQL?

Sau un limbaj de interogare structurat a fost creat cu un singur scop: a le determina, a oferi acces și a le procesa în perioade destul de scurte de timp. Dacă cunoașteți semnificația SQL, atunci veți înțelege că acest server este clasificat ca un așa-numit limbaj „non-procedural”. Adică, capacitățile sale includ doar o descriere a oricăror componente sau rezultate pe care doriți să le vedeți în viitor pe site. Dar când nu indică exact ce rezultate vor fi obținute. Fiecare cerere nouăîn această limbă este ca o „suprastructură” suplimentară. Interogările vor fi executate în ordinea în care sunt introduse în baza de date.

Ce proceduri pot fi efectuate folosind acest limbaj?

În ciuda simplității sale, baza date SQL vă permite să creați o mare varietate de interogări. Deci, ce poți face dacă înveți acest limbaj de programare important?

  • creați o mare varietate de tabele;
  • primirea, stocarea și modificarea datelor primite;
  • schimbați structurile meselor la discreția dvs.;
  • combinați informațiile primite în blocuri individuale;
  • calculați datele primite;
  • oferi protecţie deplină informație.

Ce comenzi sunt cele mai populare în această limbă?

Dacă decideți să urmați cursuri SQL for Dummies, atunci veți primi informatii detaliate despre comenzile care sunt folosite pentru a crea interogări folosindu-l. Cele mai comune astăzi sunt:

  1. DDL este o comandă care definește datele. Este folosit pentru a crea, modifica și șterge o mare varietate de obiecte din baza de date.
  2. DCL este o comandă care manipulează datele. Este folosit pentru a oferi acces utilizatori diferiți la informațiile din baza de date, precum și pentru a utiliza tabele sau vizualizări.
  3. TCL este o echipă care gestionează o varietate de tranzacții. A ei scopul principal este de a determina progresul tranzacției.
  4. DML - manipulează datele primite. Scopul său este de a permite utilizatorului să se miște diverse informatii din baza de date sau introduceți-o acolo.

Tipuri de privilegii care există pe acest server

Privilegiile se referă la acele acțiuni pe care un anumit utilizator le poate efectua în conformitate cu statutul său. Cel mai minim, desigur, este o autentificare obișnuită. Desigur, privilegiile se pot schimba în timp. Cele vechi vor fi șterse și altele noi vor fi adăugate. Până în prezent, toți cei care urmează cursuri SQL Server„pentru manechin” știți că există mai multe tipuri de acțiuni permise:

  1. Tip obiect - utilizatorului i se permite să execute orice comandă numai în legătură cu obiect specific, care se află în baza de date. În același timp, privilegiile diferă pentru diferite obiecte. Ele sunt, de asemenea, legate nu numai de un anumit utilizator, ci și de mese. Dacă cineva, folosindu-și capacitățile, a creat un tabel, atunci el este considerat proprietarul acesteia. Prin urmare, el are dreptul de a atribui noi privilegii altor utilizatori legate de informațiile din acesta.
  2. Tipul de sistem este așa-numitul drept de autor al datelor. Utilizatorii care au primit astfel de privilegii pot crea diverse obiecteîn baza de date.

Istoria SQL

Acest limbaj a fost creat de IBM Research Laboratory în 1970. La acea vreme, numele său era puțin diferit (SEQUEL), dar după câțiva ani de utilizare a fost schimbat, scurtat ușor. În ciuda acestui fapt, chiar și astăzi mulți experți în programare de renume mondial încă pronunță numele în mod veche. SQL a fost creat cu un singur scop - să inventeze un limbaj care să fie atât de simplu încât să poată fi folosit fără probleme speciale chiar și utilizatorii obișnuiți de internet pot învăța. Un fapt interesant este că la acel moment SQL nu era singurul limbaj similar. În California, un alt grup de specialiști a dezvoltat un Ingres similar, dar nu a devenit niciodată răspândit. Înainte de 1980, existau mai multe variante de SQL care erau doar puțin diferite unele de altele. Pentru a preveni confuzia, în 1983 a fost creată o versiune standard, care este încă populară și astăzi. Cursurile SQL „pentru manechin” vă permit să aflați mult mai multe despre serviciu și să îl studiați complet în câteva săptămâni.

Fiecare dintre noi întâlnim și folosim în mod regulat diverse baze de date date. Când alegem o adresă E-mail, lucrăm cu o bază de date. Bazele de date sunt folosite de serviciile de căutare, bănci pentru a stoca datele clienților etc.

Dar, în ciuda utilizării constante a bazelor de date, chiar și pentru mulți dezvoltatori sisteme software Au rămas multe „pete goale” din cauza interpretărilor diferite ale acelorași termeni. Vom da scurtă definiție termenii de bază ale bazei de date înainte de revizuire Limbajul SQL. Asa de.

Bază de date - un fișier sau o colecție de fișiere pentru stocarea structurilor ordonate de date și a relațiilor lor. Foarte des, un sistem de management se numește bază de date - este doar un depozit de informații într-un format specific și poate funcționa cu diferite SGBD.

Masa - Să ne imaginăm un folder în care sunt stocate documente, grupate după o anumită caracteristică, de exemplu, o listă de comenzi pentru luna trecuta. Acesta este tabelul din computer Masa separata are propriul nume unic.

Tip de date - tipul de informații care pot fi stocate într-o coloană sau un rând separat. Acestea pot fi numere sau text de un anumit format.

Coloană și rând- cu toții am lucrat foi de calcul, care conține și rânduri și coloane. Orice bază de date relațională funcționează cu tabele într-un mod similar. Rândurile sunt uneori numite înregistrări.

Cheia principala- Fiecare rând al unui tabel poate avea una sau mai multe coloane pentru a-l identifica în mod unic. Fără o cheie primară, este foarte dificil să actualizați, să modificați și să ștergeți rândurile dorite.

Ce este SQL?

SQL(Engleză - limbaj de interogare structurat) a fost dezvoltat doar pentru lucrul cu baze de date și în în prezent este un standard pentru toate SGBD-urile populare. Sintaxa limbajului constă din cantitate mică operatori și ușor de învățat. Dar, în ciuda aparentei sale simplități, permite crearea sql interogări pentru operațiuni complexe cu baze de date de orice dimensiune.

Din 1992, a existat un standard general acceptat numit ANSI SQL. Ea definește sintaxă de bazăși funcții de operator și este susținut de toți liderii de piață DBMS, cum ar fi ORACLE. Este imposibil să luăm în considerare toate capacitățile limbajului într-un articol scurt, așa că le vom lua în considerare pe scurt doar pe cele principale. interogări SQL. Exemplele arată clar simplitatea și capacitățile limbajului:

  • crearea de baze de date și tabele;
  • eșantionarea datelor;
  • adăugarea înregistrărilor;
  • modificarea și ștergerea informațiilor.

Tipuri de date SQL

Toate coloanele dintr-un tabel de bază de date stochează același tip de date. Tipurile de date din SQL sunt aceleași ca și în alte limbaje de programare.

Cream tabele si baze de date

Există două moduri de a crea baze de date noi, tabele și alte interogări în SQL:

  • Instrucțiuni SQL prin consola DBMS
  • Utilizarea instrumentelor de administrare interactive incluse cu serverul de baze de date.

Creată noua baza datele operatorului CREAȚI BAZĂ DE DATE<наименование базы данных>; . După cum puteți vedea, sintaxa este simplă și concisă.

Creăm tabele în baza de date folosind instrucțiunea CREATE TABLE cu următorii parametri:

  • numele tabelului
  • numele coloanelor și tipurile de date

De exemplu, să creăm un tabel de mărfuri cu următoarele coloane:

Creați un tabel:

CREATE TABLE Marfa

(commodity_id CHAR(15) NOT NULL,

vendor_id CHAR(15) NOT NULL,

nume_marfă CHAR(254) NULL,

preț_marfă DECIMAL(8,2) NULL,

commodity_desc VARCHAR(1000) NULL);

Tabelul este format din cinci coloane. După numele vine tipul de date, coloanele sunt separate prin virgule. Valoarea coloanei poate accepta valori goale (NULL) sau trebuie completată (NOT NULL), iar aceasta este determinată în momentul creării tabelului.

Preluarea datelor dintr-un tabel

Operatorul de preluare a datelor este cea mai frecvent utilizată interogare SQL. Pentru a obține informații, trebuie să indicăm ce dorim să alegem dintr-un astfel de tabel. Mai întâi un exemplu simplu:

SELECTAȚI nume_marfă FROM Mărfuri

După instrucțiunea SELECT specificăm numele coloanei pentru a obține informații, iar FROM definește tabelul.

Rezultatul interogării vor fi toate rândurile tabelului cu valori Commodity_name în ordinea în care au fost introduse în baza de date, adică. fără nicio sortare. Pentru a ordona rezultatul, utilizați operator suplimentar COMANDA PENTRU.

Pentru a interoga mai multe câmpuri, enumerați-le separate prin virgule, ca în exemplul următor:

SELECTAȚI ID-ul mărfii, numele_marfurilor, prețul_marfei FROM Mărfuri

Este posibil să obțineți valoarea tuturor coloanelor dintr-un rând ca rezultat al interogării. Pentru a face acest lucru, utilizați semnul „*”:

SELECTAȚI * DIN MARFĂ

  • În plus, SELECT acceptă:
  • Sortarea datelor (operatorul ORDER BY)
  • Selectare in functie de conditii (UNDE)
  • Termen de grupare (GROUP BY)

Adăugați o linie

Pentru a adăuga un rând la un tabel, se folosesc interogări SQL cu operatorul INSERT. Adăugarea se poate face în trei moduri:

  • adăugați o nouă linie întreagă;
  • parte dintr-un șir;
  • rezultatele interogării.

Pentru a adăuga un rând complet, trebuie să specificați numele tabelului și valorile coloanei (câmpului). linie nouă. Iată un exemplu:

INSERT INTO Commodity VALUES ("106", "50", "Coca-Cola", "1,68", "Fără Alcogol ,)

Exemplu se adaugă la tabel produs nou. Valorile sunt listate după VALUES pentru fiecare coloană. Dacă nu există o valoare corespunzătoare pentru coloană, atunci trebuie specificat NULL. Coloanele sunt populate cu valori în ordinea specificată la crearea tabelului.

Dacă adăugați doar o parte dintr-un rând, trebuie să specificați în mod explicit numele coloanelor, ca în exemplu:

INSERT INTO Commodity (commodity_id, vendor_id, commodity_name)

VALUES(„106”, ‘50”, „Coca-Cola”,)

Am introdus doar identificatorii produsului, furnizorul și numele acestuia și am lăsat câmpurile rămase necompletate.

Adăugarea rezultatelor interogării

INSERT este folosit în primul rând pentru a adăuga rânduri, dar poate fi folosit și pentru a adăuga rezultatele unei instrucțiuni SELECT.

Schimbarea datelor

Pentru a modifica informațiile din câmpurile unui tabel de bază de date, trebuie să utilizați instrucțiunea UPDATE. Operatorul poate fi utilizat în două moduri:

  • Toate rândurile din tabel sunt actualizate.
  • Doar pentru o anumită linie.

UPDATE constă din trei elemente principale:

  • tabel în care trebuie făcute modificări;
  • numele câmpurilor și noile lor valori;
  • condițiile de selectare a rândurilor de schimbat.

Să ne uităm la un exemplu. Să presupunem că prețul unui produs cu ID=106 s-a modificat, așa că această linie trebuie actualizată. Scriem următorul operator:

UPDATE Mărfuri SET pretul_marfă = "3.2" WHERE id_marfă = "106"

Am indicat numele tabelului, în cazul nostru Marfă, unde se va face actualizarea, apoi după SET - noua valoare a coloanei și a găsit intrarea dorită, specificând valoarea ID-ului dorită în WHERE.

Pentru a schimba mai multe coloane, instrucțiunea SET este urmată de mai multe perechi coloană-valoare separate prin virgule. Să ne uităm la un exemplu în care numele și prețul unui produs sunt actualizate:

UPDATE Commodity SET commodity_name=’Fanta’, commodity_price = "3.2" WHERE commodity_id = "106"

Pentru a elimina informații dintr-o coloană, le puteți atribui Valoare NULL, dacă structura tabelului o permite. Trebuie amintit că NULL este tocmai valoarea „nu” și nu zero sub formă de text sau număr. Să eliminăm descrierea produsului:

UPDATE Commodity SET commodity_desc = NULL WHERE commodity_id = "106"

Eliminarea rândurilor

Interogările SQL pentru ștergerea rândurilor dintr-un tabel sunt executate folosind instrucțiunea DELETE. Există două cazuri de utilizare:

  • Anumite rânduri din tabel sunt șterse;
  • Toate rândurile din tabel sunt șterse.

Un exemplu de ștergere a unui rând dintr-un tabel:

DELETE FROM Commodity WHERE commodity_id = „106”

După DELETE FROM indicăm numele tabelului în care vor fi șterse rândurile. Clauza WHERE conține condiția prin care rândurile vor fi selectate pentru ștergere. În exemplu, ștergem linia de produse cu ID=106. Specificarea UNDE este foarte importantă deoarece omiterea acestei declarații va șterge toate rândurile din tabel. Acest lucru este valabil și pentru modificarea valorii câmpurilor.

Instrucțiunea DELETE nu specifică numele coloanelor sau metacaracterele. Șterge complet rândurile, dar nu poate șterge o singură coloană.

Utilizarea SQL în Microsoft Access

Utilizat în mod obișnuit în mod interactiv pentru a crea tabele, baze de date, pentru a gestiona, modifica, analiza date dintr-o bază de date și pentru a implementa interogări SQL Access printr-un designer de interogări interactiv convenabil (Query Designer), folosind care puteți construi și executa imediat Instrucțiuni SQL de orice complexitate.

Este acceptat și modul de acces la server, în care Accesați DBMS poate fi folosit ca generator de interogări SQL către orice sursă de date ODBC. Această caracteristică permite Accesați aplicații interacționează cu orice format.

Extensii SQL

Deoarece interogările SQL nu au toate capabilitățile limbajelor de programare procedurale, cum ar fi bucle, ramificații etc., producătorii de SGBD dezvoltă propria versiune de SQL cu capabilități avansate. În primul rând, acesta este suport pentru procedurile stocate și operatori standard limbaje procedurale.

Cele mai comune dialecte ale limbii:

  • Baza de date Oracle - PL/SQL
  • Interbase, Firebird - PSQL
  • Microsoft SQL Server - Transact-SQL
  • PostgreSQL - PL/pgSQL.

SQL pe Internet

SGBD-ul MySQL este distribuit sub software gratuit. Licență GNU Licență Publică Generală. Există o licență comercială cu capacitatea de a dezvolta module personalizate. Cum componentă inclus în cele mai populare ansambluri de servere de Internet, precum XAMPP, WAMP și LAMP, și este cel mai popular DBMS pentru dezvoltarea aplicațiilor pe Internet.

A fost dezvoltat de Sun Microsystems și este susținut în prezent de Oracle Corporation. Sunt acceptate baze de date de până la 64 de terabytes, standardul de sintaxă SQL:2003, replicarea bazelor de date și serviciile cloud.

Majoritate web modern aplicațiile interacționează cu bazele de date, de obicei folosind un limbaj numit SQL. Din fericire pentru noi, această limbă este foarte ușor de învățat. În acest articol ne vom uita la simplu SQL interogări și învață cum să le folosești pentru a interacționa cu Baza de date MySQL.

De ce vei avea nevoie?

SQL (Limbaj de interogare structurat) un limbaj special conceput pentru a interfața cu sistemele de gestionare a bazelor de date, cum ar fi MySQL, Oracle, Sqlite iar altele... De completat SQL solicitările din acest articol, vă sfătuiesc să instalați MySQL pe calculator local. De asemenea, recomand folosirea phpMyAdmin ca interfață vizuală.

Toate acestea sunt disponibile în Denverul preferat al tuturor. Cred că toată lumea ar trebui să știe ce este și de unde să-l cumpere :). Poate sa utilizați și WAMP sau MAMP.

Denver are încorporat MySQL consolă. Acesta este ceea ce vom folosi.

CREAȚI BAZĂ DE DATE:crearea bazei de date

Iată prima noastră cerere. Vom crea prima noastră bază de date pentru lucrări ulterioare.

Pentru a începe, deschide MySQL consolă și conectați-vă. Pentru WAMP Parola implicită este goală. Adică nimic :). Pentru MAMP - „rădăcină”. Pentru Denver, trebuie să clarificăm.

După autentificare, intrați rândul următorși apăsați Introduce:

CREAȚI BAZĂ DE DATE my_first_db;

Rețineți că un punct și virgulă (;) este adăugat la sfârșitul interogării, la fel ca în alte limbi.

De asemenea, comenzi în SQL caz sensibil. Le scriem cu majuscule.

Opțiuni oficial: Set de caractereȘi Colaţionare

Dacă doriți să instalați set de caractere (set de caractere) și colaţionare (comparaţie) pot fi scrie următoarea comandă:

CREATE DATABASE my_first_db DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

Găsește o listă de seturi de caractere care sunt acceptate în MySQL.

AFIȘAȚI BAZELE DE DATE:afișează o listă cu toate bazele de date

Această comandă este folosită pentru a lista toate bazele de date disponibile.

DROP BAZA DE DATE:ștergerea unei baze de date

Puteți șterge o bază de date existentă folosind această interogare.

Aveți grijă cu această comandă, deoarece rulează fără avertisment. Dacă există date în baza dvs. de date, toate vor fi șterse.

UTILIZARE:Selectarea bazei de date

Din punct de vedere tehnic, aceasta nu este o interogare, ci o declarație și nu necesită punct și virgulă la sfârșit.

Îi spune MySQL selectați baza de date implicită pentru sesiunea curentă. Acum suntem gata să creăm tabele și să facem alte lucruri cu baza de date.

Ce este un tabel într-o bază de date?

Puteți reprezenta tabelul din baza de date ca Fisier Excel.

La fel ca în imagine, tabelele au nume de coloane, rânduri și informații. Prin utilizarea SQL interogări putem crea astfel de tabele. De asemenea, putem adăuga, citi, actualiza și șterge informații.

CREAȚI TABEL: Crearea unui tabel

C Folosind această interogare putem crea tabele în baza de date. Din pacate, documentatia MySQL nu foarte clar pentru începători în această problemă. Structura acestui tip de interogare poate fi foarte complexă, dar vom începe ușor.

Următoarea interogare va crea un tabel cu 2 coloane.

utilizatorii CREATE TABLE (nume utilizator VARCHAR(20), data_creare DATA);

Vă rugăm să rețineți că putem scrie interogările noastre pe mai multe rânduri și cu file pentru indentare.

Prima linie este simplă. Pur și simplu creăm un tabel numit „utilizatori”. În continuare, între paranteze, separate prin virgule, este o listă cu toate coloanele. După fiecare nume de coloană avem tipuri de informații, precum VARCHAR sau DATE.

VARCHAR(20) înseamnă că coloana este de tip șir și poate avea maximum 20 de caractere lungime. DATA este, de asemenea, un tip de informații care este folosit pentru a stoca datele în următorul format: „AAAA - LL-ZZ”.

CHEIA PRINCIPALA ( cheia principalah)

Înainte de a rula următoarea interogare, trebuie să includem și o coloană pentru „user_id”, care va fi cheia noastră primară. Vă puteți gândi la PRIMARY KEY ca la informații care sunt utilizate pentru a identifica fiecare rând dintr-un tabel.

CREATE TABLE utilizatori (user_id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(20), create_date DATE);

INT il face pe 32 de biti întreg tip(de exemplu, numere). INCREMENT AUTO generează automat o nouă valoare ID de fiecare dată când adăugăm noi serii de informații. Acest lucru nu este necesar, dar face întregul proces mai ușor.

Această coloană nu trebuie să fie o valoare întreagă, dar este folosită cel mai des. Deținerea unei chei primare este, de asemenea, opțională, dar este recomandată pentru arhitectura și performanța bazei de date.

Să rulăm interogarea:

Arata tabele:arata toate tabelele

Această interogare vă permite să obțineți o listă de tabele care se află în baza de date.

EXPLICA:Arată structura tabelului

Pentru a arăta structura tabelul existent Puteți folosi această solicitare.

Coloanele sunt afișate cu toate proprietățile.

DROP TABLE:sterge tabelul

La fel ca DROP BAZE DE DATE, această interogare șterge tabelul și conținutul acestuia fără avertisment.

ALTER TABLE: masa de schimb

Această interogare poate conține, de asemenea, o structură complexă din cauza Mai mult modificări pe care le poate face la masă. Să ne uităm la exemple.

(dacă ați șters tabelul în pasul anterior, creați-l din nou pentru teste)

Adăugarea unei coloane

ALTER TABLE users ADD email VARCHAR(100) AFTER username;

Datorită lizibilității bune a SQL, cred că nu are rost să-l explic în detaliu. Adăugăm o nouă coloană „e-mail” după „nume utilizator”.

ELIMEREA O COLONANĂ

A fost și foarte ușor. Utilizați această solicitare cu precauție, deoarece datele dvs. pot fi șterse fără avertisment.

Restabiliți coloana pe care tocmai ați șters-o pentru experimente ulterioare.

EFECTUAREA MODIFICĂRI ÎN-O COLONĂ

Uneori este posibil să doriți să faceți modificări proprietăților unei coloane și nu trebuie să o ștergeți complet pentru a face acest lucru.

Această interogare a redenumit coloana utilizator în „nume_utilizator” și și-a schimbat tipul din VARCHAR(20) în VARCHAR(30). Această modificare nu ar trebui să modifice datele din tabel.

INTRODUCE: Adăugarea de informații la un tabel

Să adăugăm câteva informații la tabel folosind următoarea interogare.

După cum puteți vedea, VALUES() conține o listă de valori separate prin virgule. Toate valorile sunt incluse în coloane individuale. Și valorile trebuie să fie în ordinea coloanelor care au fost definite la crearea tabelului.

Observați că prima valoare este NULL pentru câmpul PRIMARY KEY numit „user_id”. Facem acest lucru pentru ca ID-ul să fie generat automat, deoarece coloana are proprietatea AUTO_INCREMENT. Când informațiile sunt adăugate pentru prima dată, ID-ul va fi 1. Următorul rând va fi 2 și așa mai departe...

OPTIUNEA ALTERNATIVA

Există o altă opțiune de interogare pentru adăugarea de rânduri.

De data aceasta folosim cuvântul cheie SET în loc de VALUES și nu are paranteze. Există mai multe nuanțe:

Puteți sări peste coloana. De exemplu, nu i-am atribuit o valoare „user_id”, care va fi implicit la valoarea sa AUTO_INCREMENT. Dacă omiteți o coloană cu tip VARCHAR, atunci va fi adăugat un rând gol.

Fiecare coloană trebuie să fie menționată după nume. Din acest motiv, ele pot fi menționate în orice ordine, spre deosebire de versiunea anterioară.

OPȚIUNEA ALTERNATIVA 2

Iată o altă opțiune.

Din nou, deoarece există referințe la numele coloanei, puteți seta valorile în orice ordine.

LAST_INSERT_ID()

Puteți folosi această interogare pentru a obține ID-ul pentru care a fost AUTO_INCREMENT ultimul rând sesiunea curenta.

ACUM()

Acum este timpul să arătăm cum puteți utiliza funcția MySQL în interogări.

Funcția NOW() iese data curenta. Așa că îl puteți folosi pentru a seta automat data unei coloane la cea curentă atunci când introduceți un rând nou.

Vă rugăm să rețineți că am primit 1 avertisment, dar vă rugăm să îl ignorați. Motivul pentru aceasta este că NOW() servește și pentru a scoate informații temporare.

SELECTAȚI: Citirea datelor dintr-un tabel

Dacă adăugăm informații la un tabel, atunci ar fi logic să învățăm cum să le citim de acolo. Aici ne va ajuta interogarea SELECT.

Mai jos este cea mai simplă interogare SELECT posibilă pentru a citi un tabel.

În acest caz, asteriscul (*) înseamnă că am solicitat toate câmpurile din tabel. Dacă doriți doar anumite coloane, interogarea ar arăta astfel.

CondițieUNDE

Cel mai adesea, nu ne interesează toate rubricile, ci doar unele. De exemplu, să presupunem că avem nevoie doar Adresa de e-mail pentru utilizatorul „nettuts”.

WHERE vă permite să setați condiții într-o interogare și să faceți selecții detaliate.

Rețineți că pentru egalitate se folosește un semn egal (=), nu două, ca în programare.

Puteți folosi și comparații.

ȘI sau SAU pot fi utilizate pentru a combina condiții:

Te rog noteaza asta valori numerice nu trebuie să fie între ghilimele.

ÎN()

Acest lucru este util pentru eșantionarea pe mai multe valori

CA

Vă permite să faceți solicitări „wildcard”.

Pictograma % este folosită ca „wildcard”. Adică orice ar putea fi la locul lui.

CondițieCOMANDA PENTRU

Dacă doriți să obțineți rezultatul într-o formă ordonată după orice criteriu

Ordinea implicită este ASC (de la cel mai mic la cel mai mare). Pentru invers, se folosește DESC.

LIMITĂ ... OFFSET ...

Puteți limita numărul de rezultate primite.

LIMIT 2 ia doar primele 2 rezultate. LIMIT 1 OFFSET 2 obține 1 rezultat după primele 2. LIMIT 2, 1 înseamnă același lucru (doar rețineți că offset vine mai întâi și apoi limit ).

ACTUALIZAȚI: Faceți modificări la informațiile din tabel

Această interogare este folosită pentru a modifica informațiile dintr-un tabel.

În cele mai multe cazuri, este folosit împreună cu o clauză WHERE, deoarece cel mai probabil veți dori să faceți modificări anumitor coloane. Dacă nu există o clauză WHERE, modificările vor afecta toate rândurile.

De asemenea, puteți utiliza LIMIT pentru a limita numărul de rânduri care trebuie modificate.

ȘTERGE: Eliminarea informațiilor dintr-un tabel

La fel ca UPDATE, această interogare este folosită cu WHERE:

Pentru a șterge conținutul unui tabel, puteți face pur și simplu acest lucru:

DELETE FROM utilizatori;

Dar este mai bine să folosești TRUNCHIA

Pe lângă ștergere, această solicitare resetează și valorile INCREMENT AUTO iar când adăugați din nou rânduri, numărătoarea inversă va începe de la zero.ȘTERGE nu face acest lucru și numărătoarea inversă continuă.

Dezactivarea valorilor minuscule și a cuvintelor speciale

Valori șiruri

Unele caractere trebuie dezactivate ( evadare ), sau pot apărea probleme.

Pentru aceasta este folosită o bară oblică inversă.(\).

Cuvinte speciale

Pentru că în MySQL sunt multe cuvinte speciale ( SELECTAȚI sau UPDATE ), pentru a evita erorile atunci când le utilizați, trebuie să utilizați ghilimele. Dar nu citate obișnuite, ci așa(`).

Adică, va trebui să adăugați o coloană numită "șterge ", trebuie să faci așa:

Concluzie

Vă mulțumesc că ați citit până la capăt. Sper că ați găsit acest articol de ajutor. Nu s-a terminat inca! Va urma:).

Limbajul de interogare structurat sau SQL este un limbaj de programare declarativ pentru utilizarea în baze de date cvasi-relaționale. Multe dintre caracteristicile originale ale SQL au fost preluate din calculul tuplu, dar ultimele extensii SQL include din ce în ce mai multă algebră relațională.
SQL a fost creat inițial de IBM, dar mulți furnizori și-au dezvoltat propriile dialecte. A fost adoptat ca standard american Institutul National standardelor (ANSI) în 1986 și ISO în 1987. În standardul limbajului de programare SQL, ANSI a declarat că pronunția oficială a SQL este „es q el”. Cu toate acestea, mulți specialiști în baze de date au folosit pronunția „slang” „Sequel”, care reflectă numele inițial al limbii, Sequel, care a fost schimbat ulterior din cauza conflictului. mărciși nume de la IBM. Programare pentru incepatori.
Limbajul de programare SQL a fost revizuită în 1992 și această versiune este cunoscută ca SQL-92. 1999 a fost apoi revizuit din nou pentru a deveni SQL:1999 (AKA SQL3). Programare pentru manechini. SQL 1999 acceptă obiecte care nu erau acceptate anterior în alte versiuni, dar de la sfârșitul anului 2001, doar câteva sisteme de gestionare a bazelor de date acceptau implementări SQL: SQL 1999.
SQL, deși este definit ca ANSI și ISO, are multe variații și extensii, dintre care majoritatea au propriile caracteristici, cum ar fi implementarea „PL/SQL” a Oracle Corporation sau implementarea Sybase și Microsoft numită „Transact-SQL”, care poate fi confuză pentru cei familiarizați cu elementele de bază ale programării. De asemenea, nu este neobișnuit ca implementările comerciale să omite suportul pentru principalele caracteristici ale standardului, precum tipuri de date precum data și ora, preferând altele. propria versiune. Ca rezultat, spre deosebire de ANSI C sau ANSI Fortran, care pot fi portate de obicei de la platformă la platformă fără modificări structurale majore, interogările limbajului de programare SQL pot fi portate rareori între sisteme diferite baze de date fără modificări semnificative. Majoritatea oamenilor din industria bazelor de date consideră că această lipsă de compatibilitate este intenționată, pentru a oferi fiecărui dezvoltator propriul sistem de gestionare a bazelor de date și a lega cumpărătorul de o anumită bază de date.
După cum sugerează și numele, limbajul de programare SQL este conceput pentru scopuri specifice, limitate - interogarea datelor conținute în baza de date relationala date. Ca atare, este un set de instrucțiuni de limbaj de programare pentru crearea mostrelor de date, mai degrabă decât un limbaj procedural precum C sau BASIC, care sunt concepute pentru a rezolva o gamă mult mai largă de probleme. Extensiile de limbaj precum „PL/SQL” sunt concepute pentru a rezolva această limitare prin adăugarea de elemente procedurale la SQL, păstrând în același timp beneficiile SQL. O altă abordare este de a încorpora comenzile limbajului de programare procedural în interogările SQL și de a interacționa cu baza de date. De exemplu, Oracle și alții suportă limbajul Javaîn baza de date, în timp ce PostgreSQL vă permite să scrieți funcții în Perl, Tcl sau C.
O glumă despre SQL: „SQL nu este nici structurat, nici limbaj”. Ideea glumei este că SQL nu este un limbaj Turing. .

Selectați * din T
C1 C2
1 A
2 b
C1 C2
1 A
2 b
Selectați C1 din T
C1
1
2
C1 C2
1 A
2 b
Selectați * din T unde C1=1
C1 C2
1 A

Având în vedere tabelul T, Selectați cererea* din T va afișa toate elementele tuturor rândurilor din tabel.
Din același tabel, interogarea Select C1 din T va afișa elementele din coloana C1 a tuturor rândurilor din tabel.
Din același tabel, interogarea Select * din T unde C1=1 va afișa toate elementele tuturor rândurilor în care valoarea coloanei C1 este „1”.

Cuvinte cheie SQL

Cuvintele SQL sunt împărțite într-un număr de grupuri.

Primul este Limbajul de manipulare a datelor sau DML(limbaj de gestionare a datelor). DML este un subset al limbajului folosit pentru a interoga bazele de date și pentru a adăuga, actualiza și șterge date.

  • SELECT este una dintre cele mai frecvent utilizate comenzi DML și permite utilizatorului să specifice o interogare ca o descriere set a rezultatului dorit. Interogarea nu specifică modul în care trebuie aranjate rezultatele - traducerea interogării într-o formă care poate fi executată în baza de date este sarcina sistemului de baze de date, mai precis a optimizatorului de interogări.
  • INSERT este folosit pentru a adăuga rânduri (set formal) la un tabel existent.
  • UPDATE este folosit pentru a modifica valorile datelor dintr-un rând de tabel existent.
  • DELETE specifică rândurile existente care vor fi șterse din tabel.

Alte trei Cuvinte cheie Ei bine, putem spune că se încadrează în grupul DML:

  • BEGIN WORK (sau START TRANZACȚIA, în funcție de dialectul SQL) poate fi folosit pentru a marca începutul unei tranzacții de bază de date care fie va finaliza totul, fie nu se va executa deloc.
  • COMMIT afirmă că toate modificările de date făcute după efectuarea operațiunilor sunt salvate.
  • ROLLBACK specifică faptul că toate modificările datelor după ultima comitere sau rollback trebuie distruse, până la punctul în care a fost înregistrat în baza de date ca „rollback”.

COMMIT și ROLLBACK sunt utilizate în domenii precum controlul tranzacțiilor și blocarea. Ambele instrucțiuni completează toate tranzacțiile curente (seturile de operațiuni din baza de date) și elimină toate blocajele la modificarea datelor din tabele. Prezența sau absența unei instrucțiuni BEGIN WORK sau similare depinde de implementarea SQL particulară.

Al doilea grup de cuvinte cheie aparține grupului Data Definition Language sau DDL (Data Definition Language). DDL permite utilizatorului să definească noi tabele și elementele asociate acestora. Majoritatea bazelor de date SQL comerciale au propriile extensii DDL care permit controlul asupra elementelor non-standard, dar de obicei vitale, ale unui anumit sistem.
Principalele puncte ale DDL sunt comenzile de creare și ștergere.

  • CREATE specifică obiectele (cum ar fi tabelele) care vor fi create în baza de date.
  • DROP specifică ce obiecte existente în baza de date vor fi șterse, de obicei definitiv.
  • Unele sisteme de baze de date acceptă și comanda ALTER, care permite utilizatorului să schimbe obiect existentîn moduri diferite - de exemplu, acesta este modul în care puteți adăuga coloane la un tabel existent.

Al treilea grup de cuvinte cheie SQL este Limbajul de control al datelor sau DCL (Limbajul de control al datelor). DCL este responsabil pentru drepturile de acces la date și permite utilizatorului să controleze cine are acces pentru a vizualiza sau manipula datele din baza de date. Există două cuvinte cheie principale aici:

  • GRANT - permite utilizatorului să efectueze operațiuni
  • REVOKE - Îndepărtează sau restricționează capacitatea utilizatorului de a efectua operațiuni.

Sisteme de baze de date folosind SQL

  • InterBase
  • MySQL
  • Oracol
  • PostgreSQL
  • SQL Server

Cum să devii un profesionist în dezvoltarea de site-uri web și să începi să câștigi bani? Cursuri video ieftine cu o introducere introductivă.