Transact-SQL - crearea unei baze de date. Bazele T-SQL

Exemplu de creație baza locala Date Microsoft SQL Server VDOMNIȘOARĂ Studio vizual

Acest subiect prezintă o soluție la problema creării unei baze de date tip SQL Server folosind MS Visual Studio. Sunt luate în considerare următoarele întrebări:

  • lucrul cu fereastra Server Explorer din MS Visual Studio;
  • crearea unei baze de date locale de tip SQL Server Database;
  • crearea de tabele în baza de date;
  • editarea structurilor tabelelor;
  • conectarea tabelelor bazei de date între ele;
  • introducerea datelor în tabele folosind MS Visual Studio.

Sarcina

Folosind instrumentele MS Visual Studio, creați o bază de date de tip MS SQL Server numită Education. Baza de date conține două tabele Student și Session. Tabelele sunt legate între ele printr-un anumit câmp.

Structura primului tabel „Student”.

Structura celui de-al doilea tabel „Sesiunea”.

Performanţă

1. Descărcați MS Visual Studio.

2. ActivațifereastrăServer Explorer.

Pentru a lucra cu baze de date, Microsoft oferă un server de baze de date ușor Microsoft SQL Server. Exista versiuni diferite Microsoft SQL Server, de exemplu: Microsoft SQL Server 2005, Microsoft SQL Server 2008, Microsoft SQL Server 2014 și alte versiuni.

Aceste versiuni pot fi descărcate de pe site-ul web Microsoft www.msdn.com.

Acest server este excelent pentru a lucra cu baze de date. Este gratuit și are GUI pentru a crea și administra baze de date cu folosind SQL Instrument de management al serverului.

În primul rând, înainte de a crea o bază de date, trebuie să activați utilitarul Server Explorer. Pentru a face acest lucru, în MS Visual Studio trebuie să apelați (Fig. 1)

Vizualizare -> Server Explorer

Orez. 1. Apelați Server Explorer

Odată apelată, fereastra Server Explorer va avea un aspect aproximativ, așa cum se arată în Figura 2.

Orez. 2. Fereastra Server Explorer

3. Crearea bazei de date „Educație”.

Pentru a crea o nouă bază de date bazată pe furnizorul de date Microsoft SQL Server, trebuie să faceți clic pe nodul Conexiuni de date și apoi să selectați „ Creați o nouă bază de date SQL Server...” (Fig. 3).

Orez. 3. Apelarea comenzii de creare a bazei de date SQL Server

Ca urmare, fereastra „ Creați o nouă bază de date SQL Server„(Fig. 4).

În fereastra (în câmpul „Nume server”), indicați numele server local instalat pe computerul dvs. În cazul nostru, acest nume este „SQLEXPRESS”.

Câmpul „Nume nou bază de date:” indică numele bazei de date care este creată. În cazul nostru, acest nume este Educație.

Opțiunea Utilizați autentificare Windows trebuie lăsată neschimbată și faceți clic pe OK.

Orez. 4. Creați o nouă bază de date SQL Server 2008 Express folosind MS Visual Studio 2010

După parcurgerea pașilor, fereastra Server Explorer va lua forma prezentată în Figura 5. După cum se poate vedea din Figura 5, baza de date Education cu numele

sasha-pc\sqlexpress.Education.dbo

Orez. 5. Fereastra Server Explorer după adăugarea bazei de date Education

4. Obiecte baze de date educaționale.

Dacă extindeți baza de date Education (semnul „+”), puteți vedea o listă cu următoarele obiecte principale:

  • Diagrame baze de date – diagrame baze de date. Diagramele arată relațiile dintre tabelele bazei de date, relațiile dintre câmpuri mese diferiteși așa mai departe.;
  • Tabele – tabele în care sunt plasate datele bazei de date;
  • Vederi – reprezentări. Diferența dintre vederi și tabele este că tabelele bazei de date conțin date, în timp ce vizualizările de date nu, iar conținutul este selectat din alte tabele sau vederi;
  • Proceduri stocate – proceduri stocate. Sunt un grup de instrucțiuni SQL asociate care oferă flexibilitate suplimentară atunci când lucrați cu o bază de date.

5. Crearea tabelului Student.

Pe acest moment Baza de date Education este complet goală și nu conține niciun obiect (tabele, proceduri stocate, vizualizări etc.).

Pentru a crea un tabel, trebuie să apelați meniul contextual (faceți clic Click dreapta mouse) și selectați comanda „Add New Table” (Figura 6).

Orez. 6. Adăugați o nouă comandă de tabel

Există o altă opțiune de a adăuga un tabel de bază de date folosind comenzile meniul de date:

Date -> Adăugați nou -> Tabel

Orez. 7. Opțiune alternativă adăugarea unui nou tabel

Ca rezultat, se va deschide fereastra de adăugare a tabelului, care conține trei coloane (Figura 8). În prima coloană „Numele coloanei” trebuie să introduceți numele câmpului corespunzător din tabelul bazei de date. În a doua coloană „Tipul de date” trebuie să introduceți tipul de date al acestui câmp. A treia coloană „Permite valori nule” indică opțiunea posibilității de a lipsi date în câmp.

Orez. 8. O nouă fereastră de creare a unui tabel

Folosind editorul de tabel, trebuie să creați tabelul Student așa cum se arată în Figura 9. Numele tabelului trebuie specificat când îl închideți.

În editorul de tabel, puteți seta proprietățile câmpului în fereastra Proprietăți coloane. Pentru a seta lungimea șirului (nvchar) în caractere, există o proprietate Length în fereastra Column Properties. Valoarea implicită pentru această proprietate este 10.

Orez. 9. Masa studentului

Următorul pas este să setați câmpul cheie. Acest lucru se face prin apelarea comenzii „Set Primary Key” din meniul contextual al câmpului Num_book. Folosind câmpul cheie se vor stabili relații între tabele. În cazul nostru, câmpul cheie este numărul caietului de note.

Orez. 10. Setarea unui câmp cheie

După setarea cheii primare, fereastra tabelului va arăta ca în figura 11.

Orez. 11. Masa elevilor după formarea finală

Acum poți închide masa. În fereastra pentru salvarea tabelului, trebuie să îi setați numele - Student (Fig. 12).

Orez. 12. Introducerea numelui tabelului Student

6. Crearea tabelului Session.

Urmând exemplul creării tabelului Student, este creat tabelul Session.

Figura 13 prezintă tabelul de sesiuni după formarea finală. Cheia primară este setată în câmpul Num_book. Numele tabelului este dat de Sesiune.

Orez. 13. Tabelul sesiunii

După parcurgerea pașilor, în fereastra Server Explorer vor fi afișate două tabele Student și Session.

Astfel, orice număr de tabele poate fi adăugat la baza de date.

7. Editarea structurii tabelului.

Există momente când trebuie să modificați structura unui tabel de bază de date.

Pentru a face modificări la tabelele bazei de date în MS Visual Studio, mai întâi trebuie să debifați opțiunea „Preveniți salvarea modificărilor” care necesită recrearea mesei” așa cum se arată în Figura 14. În caz contrar, MS Visual Studio va bloca modificările aduse tabelului creat anterior. Fereastra Opțiuni prezentată în Figura 14 este apelată din meniul Instrumente în următoarea secvență:

Tools -> Options -> Database Tools -> Table and Database Designers

Orez. 14. Opțiunea „ Preveniți salvarea modificărilor care necesită recrearea tabelului

Odată configurat, puteți modifica structura tabelului. Pentru a face acest lucru, utilizați comanda „Open Table Definition” (Figura 15) din meniul contextual, care este apelat pentru tabelul selectat (clic dreapta).

Orez. 15. Apelarea comenzii „Open Table Definition”.

Această comandă se află și în meniul Date:

Date -> Definiție tabel deschis

Tabelul trebuie mai întâi selectat.

8. Stabilirea legăturilor între tabele.

În conformitate cu condițiile problemei, tabelele sunt legate între ele prin câmpul Num_book.

Pentru a crea o relație între tabele, trebuie mai întâi (Figura 16):

  • selectați obiectul Diagrama bazei de date;
  • selectați comanda Add New Diagram din meniul contextual (sau din meniul Date).

Orez. 16. Apelarea comenzii pentru a adăuga o nouă diagramă

Ca rezultat, se va deschide o fereastră pentru adăugarea unei noi diagrame Add Table (Figura 17). În această fereastră, trebuie să selectați două tabele Sesiune și Student în secvență și faceți clic pe butonul Adăugare.

Orez. 17. Fereastra pentru adăugarea de tabele la o diagramă

Orez. 18. Tabelele pentru elev și sesiune după adăugarea lor la diagramă

Pentru a începe să stabiliți o relație între tabele, trebuie să faceți clic pe câmpul Num_book din tabelul Student și apoi (fără a elibera butonul mouse-ului) să îl trageți în câmpul Num_book din tabelul Session.

Ca rezultat, două ferestre se vor deschide secvenţial: Tables and Columns (Fig. 19) şi Foreign Key Relationship (Fig. 20), în care trebuie să lăsaţi totul ca atare şi să confirmaţi alegerea cu OK.

În fereastra Tabele și coloane sunt specificate numele relației (FK_Session_Student) și numele tabelelor părinte (Student) și copil.

Orez. 19. Fereastra Tabele și Coloane

Orez. 20. Fereastra pentru setarea proprietatilor relatiei

După acțiunile finalizate, se va stabili relația dintre tabele (Figura 21).

Orez. 21. Relația dintre tabelele Student și Session

Salvarea unei diagrame se face în același mod ca și salvarea unui tabel. Numele diagramei trebuie ales la discreția dvs. (de exemplu, Diagrama 1).

După specificarea numelui diagramei, se va deschide fereastra Salvare, în care trebuie să confirmați alegerea (Figura 22).

Orez. 22. Confirmarea salvării modificărilor în tabele

9. Introducerea datelor în tabele.

Sistem Microsoft Visual Studio vă permite să introduceți direct date în tabelele bazei de date.

În cazul nostru, când se stabilește o conexiune (Fig. 19), tabelul Student este selectat ca Tabel cheie primară. Prin urmare, mai întâi trebuie să introduceți date în celulele acestui tabel special. Dacă încercați să introduceți mai întâi date în tabelul de sesiune, sistemul va bloca o astfel de intrare și va afișa un mesaj corespunzător.

Pentru a apela modul de introducere a datelor în tabelul Student, trebuie să apelați comanda Show Table Data din meniul contextual (clic dreapta) sau din meniul Date (Fig. 23).

Orez. 23. Comanda Afișare date tabel

Se va deschide o fereastră în care trebuie să introduceți datele de intrare (Fig. 24).

Orez. 24. Introducerea datelor în tabelul Student

După introducerea datelor în tabelul Student, trebuie să introduceți datele în tabelul Session.

Când introduceți date în câmpul Num_book din tabelul Session, trebuie să introduceți exact aceleași valori care au fost introduse în câmpul Num_book din tabelul Student (deoarece aceste câmpuri sunt legate între ele).

De exemplu, dacă valorile sunt introduse în câmpul Num_book din tabelul Student “101”, “102”, “103” (vezi Fig. 24), atunci aceste valori ar trebui introduse în câmpul Num_book din tabelul Session. Dacă încercați să introduceți o valoare diferită, sistemul va afișa aproximativ următoarea fereastră (Fig. 25).

Orez. 25. Mesaj de eroare despre introducerea datelor pentru tabelele Student și Session legate

Tabelul de sesiuni cu datele introduse este prezentat în Figura 26.

Microsoft SQL Server 005 - Un exemplu de creare a unui fișier „*.mdf” pentru o bază de date locală Microsoft SQL Server în Microsoft Visual Studio

Partea finală a modelării unui sistem informațional este crearea unei baze de date reale, bazată pe proiectarea realizată mai sus. Aceasta include selectarea unei baze de date adecvate, implementarea și configurarea acesteia, crearea obiectelor structurii bazei de date folosind instrumente adecvate și popularea bazei de date cu un set de date de testare.

Pentru implementarea bazei de date relaționale a structurii propuse în cadrul acestui curs, a fost ales DBMS MS SQL Server - unul dintre lideri piata moderna SGBD relațional, distribuit gratuit pentru dezvoltarea sau testarea aplicațiilor și licențiat pentru uz industrial. Avantajele MS SQL sunt:

Functionalitate ridicata;

Suport complet pentru standardul SQL și extensia sa T-SQL;

Suport larg răspândit și accesibil;

Fiabilitate;

Performanţă.

Disponibilitatea instrumentelor încorporate pentru lucrul și administrarea bazei de date.

MS SQL este liderul pieței moderne DBMS relaționale. Versiunea actuală stabilă a MS SQL la momentul scrierii era versiunea 2012. Instalarea acestui DBMS nu este dificilă. Procesul de instalare este însoțit de un expert care solicită datele necesare de la utilizator și apoi instalează independent serverul de baze de date și îl configurează pentru performanțe optime.

Pentru a crea o bază de date în SGBD MS SQL, au fost folosite interogări în limbajul SQL standardizat (Structured Query Language). În timpul procesului de creare a bazei de date, au fost specificate tipuri de date adecvate pentru toate atributele relaționale. Numele entităților și atributelor au fost traduse în engleză, câmpuri cheie format cu prefixul „ID_” și un sufix format din numele tabelului asociat acestuia. Tabelul 8 arată corespondența numelui entității cu tabelul fizic din baza de date.

Tabelul 8

Corespondența numelui entității cu tabelul fizic

Esență

Tipuri de transport

Modelul fizic Sistem informaticîn baza de date este prezentată în fig. 5.

Orez. 5. Modelul fizic Sistem informatic

Codul sursă pentru crearea tuturor relațiilor cu bazele de date este prezentat în Anexa la această lucrare.

După crearea bazei de date, aceasta a fost completată cu un set de date de testare. Codul sursă al solicitărilor de completare a bazei de date cu un set de date de testare este prezentat în Anexa la această lucrare.

Tabelele bazei de date create pe server sunt prezentate în Fig. 6.

Orez. 6. Diagrama de date a serverului MS SQL

5. Dezvoltarea obiectelor bazei de date care demonstrează logica domeniului

Pentru a demonstra funcționalitatea logicii bazei de date, vom crea și vom demonstra funcționarea următoarelor obiecte pe un set de date de testare:

  • Reprezentare;

    Proceduri stocate;

    Declanșatoare.

Interogări baze de date.

Reprezinta remediu de bază pentru a prelua informații din baza de date. Standardul SQL este folosit pentru a scrie interogarea. Pentru a demonstra, să scriem o interogare care să afișeze o listă de turiști care au plecat în vacanță la hotelul San Simeon Apartments, sortând numele turiștilor în ordine alfabetică. Cererea și rezultatul executării acesteia sunt prezentate în Fig. 7.

Orez. 7. Rezultatul cererii

Reprezentare- obiecte de baze de date virtuale care reflectă date într-o anumită formă din conținutul altor obiecte. Textul vederii este o interogare SQL pentru obținerea datelor din unul sau mai multe tabele, alte vizualizări și rezultatele executării procedurilor. Pentru a demonstra cum funcționează logica asupra datelor de testare, vom crea o vizualizare care afișează un tabel de călătorie și descifrează valorile tuturor câmpurilor cheie aferente. Textul vederii și rezultatul executării acesteia sunt prezentate în Fig. 8.

Orez. 8. Prezentarea și rezultatul muncii sale

Proceduri stocate. Acestea sunt obiecte din baza de date care vă permit să stocați seturi de instrucțiuni pentru procesarea și modificarea datelor. Textul procedurii este scris în dialect Limbajul SQL pentru MS SQL Server, numit pe scurt Transacts SQL sau T-SQL. Pentru a demonstra, vom scrie o procedură stocată care ne permite să modificăm costul vieții în toate hotelurile cu un anumit procent. Textul procedurii stocate este prezentat în Fig. 9.

Orez. 9. Procedura stocată

Declanșatoare. Aceasta este o procedură specială stocată care este apelată nu de utilizator, ci de serverul bazei de date însuși ca răspuns la un eveniment INSERT, DELETE, UPDATE din tabelul specificat. Declanșatorii sunt folosiți pe scară largă de programatori pentru a automatiza controlul și modificările datelor dintr-o bază de date. De regulă, un declanșator funcționează neobservat de utilizatorul bazei de date și se manifestă atunci când acesta introduce date care sunt eronate din punctul de vedere al programatorului. Să presupunem că o agenție de turism nu lucrează cu copii sub 10 ani. Să scriem un declanșator care nu vă va permite să introduceți vârsta unui turist mai mică de 10 ani. Textul declanșatorului este prezentat în Fig. 10.

Orez. 10. Declanșator care nu permite introducerea vârstei turistului sub 10 ani

Deci, ați instalat MySQL și începem să stăpânim limbajul SQL. În lecția 3 despre noțiunile de bază ale bazei de date, am creat un model conceptual al unei baze de date mici pentru forum. Este timpul să-l implementăm în SGBD-ul MySQL.

Pentru a face acest lucru, în primul rând trebuie să alergați Server MySQL. Să mergem la meniul de sistem Start - Programe - MySQL - MySQL Server 5.1 - Comanda MySQL Client de linie. Se va deschide o fereastră care vă va cere să introduceți o parolă.

Apăsați Enter de pe tastatură dacă nu ați specificat o parolă la configurarea serverului sau specificați o parolă dacă ați specificat una. Asteptam invitatia mysql>.

Trebuie să creăm o bază de date, pe care o vom numi forum. Există un operator pentru aceasta în SQL creați o bază de date

Creați baza de date database_name;


Lungimea maximă a numelui unei baze de date este de 64 de caractere și poate include litere, cifre, caracterul „_” și caracterul „$”. Numele poate începe cu un număr, dar nu trebuie să fie format în întregime din numere. Orice interogare la baza de date se termină cu punct și virgulă (acest caracter se numește delimitator). După ce a primit cererea, serverul o execută și, dacă are succes, afișează mesajul „Interogare OK...”

Deci, să creăm o bază de date pe forum:

Apăsați Enter și vedeți răspunsul „Query OK...”, ceea ce înseamnă că baza de date a fost creată:

Este atat de simplu. Acum trebuie să creăm 3 tabele în această bază de date: subiecte, utilizatori și mesaje. Dar înainte de a face acest lucru, trebuie să spunem serverului în ce bază de date creăm tabelele, adică. trebuie să selectați o bază de date cu care să lucrați. În acest scop este utilizat operatorul utilizare. Sintaxa pentru selectarea unei baze de date cu care să lucrați este următoarea:

Utilizați numele_bază de date;


Deci, să alegem baza noastră de date pe forum pentru muncă:

Apăsați Enter și vedeți răspunsul „Bază de date schimbată” - baza de date este selectată.

Trebuie să selectați o bază de date în fiecare sesiune de lucru cu MySQL.

Pentru a crea tabele în SQL există un operator creați un tabel. Crearea unei baze de date are următoarea sintaxă:

Creați tabelul nume_tabel (tipul numelui_primului_coloană, tipul numelui_al doilea_coloanei, ..., tipul numelui_ultimii_coloanei);


Cerințele pentru numele tabelelor și coloanelor sunt aceleași ca și pentru numele bazelor de date. Fiecare coloană are asociat un tip de date specific, ceea ce limitează tipul de informații care pot fi stocate în coloană (de exemplu, împiedicând introducerea literelor într-un câmp numeric). MySQL acceptă mai multe tipuri de date: numerice, șir, calendar și tip special NULL, indicând nicio informație. Vom vorbi despre tipurile de date în detaliu în lecția următoare, dar deocamdată să revenim la tabelele noastre. În ele avem doar două tipuri de date - valori întregi (int) și șiruri de caractere (text). Deci, să creăm primul tabel - Subiecte:

Apăsați Enter - tabelul este creat:

Deci, am creat un tabel de subiecte cu trei coloane:
id_topic int - id-ul subiectului (valoare întreagă),
topic_name text - numele subiectului (șir),
id_author int - id-ul autorului (valoare întreagă).

Să creăm celelalte două tabele într-un mod similar - utilizatori (utilizatori) și postări (mesaje):

Deci, am creat o bază de date pe forum și există trei tabele în ea. Acum ne amintim acest lucru, dar dacă baza noastră de date este foarte mare, atunci este pur și simplu imposibil să ne amintim numele tuturor tabelelor și coloanelor. Prin urmare, trebuie să putem vedea ce baze de date avem, ce tabele sunt prezente în ele și ce coloane conțin aceste tabele. Există mai mulți operatori pentru aceasta în SQL:

arata bazele de date- afișați toate bazele de date disponibile,

arata tabele- afișați o listă de tabele din baza de date curentă (mai întâi trebuie să o selectați folosind operatorul utilizare),

descrie numele_tabelului- arată o descriere a coloanelor din tabelul specificat.

Sa incercam. Să ne uităm la toate bazele de date disponibile (aveți doar una până acum - forum, eu am 30 și toate sunt listate într-o coloană):

Acum să ne uităm la lista de tabele din baza de date a forumului (pentru a face acest lucru, trebuie mai întâi să o selectați), nu uitați să apăsați Enter după fiecare solicitare:

În răspuns vedem numele celor trei tabele noastre. Acum să ne uităm la descrierea coloanelor, de exemplu, tabelul cu subiecte:

Primele două coloane ne sunt familiare - acesta este numele și tipul de date, valorile celorlalte mai avem de aflat. Dar mai întâi, vom afla în continuare ce tipuri de date există, care și când să le folosim.

Și astăzi ne vom uita la ultimul operator - cădere brusca, vă permite să ștergeți tabele și bazele de date. De exemplu, să ștergem tabelul cu subiecte. Deoarece acum doi pași am selectat baza de date a forumului pentru lucru, acum nu este nevoie să o selectați, puteți scrie pur și simplu:

Drop table table_name;


și apăsați Enter.

Acum să ne uităm din nou la lista de tabele din baza noastră de date:

Tabelul nostru este într-adevăr șters. Acum haideți să ștergem baza de date a forumului în sine (ștergeți-o, nu vă pare rău, va trebui totuși refăcută). Pentru a face asta scriem:

Eliminați baza de date numele_bază de date;


și apăsați Enter.

Și verificați acest lucru interogând toate bazele de date disponibile:

Probabil că nu aveți o singură bază de date; am 29 dintre ele în loc de 30.

Asta e tot pentru azi. Am învățat cum să creăm baze de date și tabele, să le ștergem și să preluăm informații despre bazele de date existente, tabele și descrierile acestora.

Ultima actualizare: 07/09/2017

Crearea bazei de date

Pentru a crea o bază de date, utilizați comanda CREATE DATABASE.

Pentru a crea o nouă bază de date, deschideți SQL Server Studio de management. Faceți clic pe alocarea serverului în fereastra Object Explorer și selectați New Query din meniul care apare.

În câmpul central pentru introducerea expresiilor sql, introduceți următorul cod:

CREAȚI BAZĂ DE DATE usersdb

Astfel creăm o bază de date, care se va numi „usersdb”:

Pentru a executa comanda, faceți clic pe butonul Execute din bara de instrumente sau apăsați tasta F5. Și va apărea pe server noua baza date.

După crearea bazei de date, o putem seta ca cea curentă folosind comanda USE:

USE usersdb;

Atașarea unei baze de date

Este posibil să avem deja un fișier de bază de date, care, de exemplu, a fost creat pe alt computer. Fișierul bazei de date este un fișier cu extensia mdf, iar în principiu putem transfera acest fișier. Totuși, chiar dacă îi copiem computerul cu MS SQL Server instalat, baza de date copiată nu va apărea pe server chiar așa. Pentru a face acest lucru, trebuie să atașați baza de date la server. În acest caz se folosește expresia:

CREATE DATABASE database_name ON PRIMARY(FILENAME="path_to_mdf_file_on_local_computer") FOR ATACH;

Este mai bine să folosiți directorul în care sunt stocate celelalte baze de date server ca director pentru baza de date. Pe Windows 10, implicit acesta este directorul C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA. De exemplu, să presupunem că în cazul meu fișierul de date se numește userstoredb.mdf. Și vreau să adaug acest fișier la server ca bază de date. În primul rând, trebuie să îl copiați în directorul de mai sus. Apoi, pentru a atașa baza de date la server, utilizați următoarea comandă:

CREAȚI BAZĂ DE DATE contactsdb PE PRIMARY(FILENAME="C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\userstoredb.mdf") PENTRU ATACH;

După executarea comenzii, baza de date contactsdb va apărea pe server.

Ștergeți o bază de date

Pentru a elimina o bază de date, utilizați comanda DROP DATABASE, care are următoarea sintaxă:

DROP DATABASE nume_bază de date1 [, nume_bază de date2]...

După comandă, separate prin virgule, putem enumera toate bazele de date de șterse. De exemplu, ștergerea bazei de date contactsdb:

DROP DATABASE contactsdb

Merită să luați în considerare faptul că, chiar dacă baza de date care este ștearsă a fost atașată, toate fișierele bazei de date vor fi totuși șterse.

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. Utilizarea bazelor de date servicii de căutare, bănci pentru stocarea datelor 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 a acoperi 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 relevante.

Ce este SQL?

SQL(Engleză interogări structurate) a fost conceput numai pentru lucrul cu baze de date și în în prezent este un standard pentru toate SGBD-urile populare. Sintaxa limbajului constă din cantitate mica operatori și ușor de învățat. Dar, în ciuda simplității sale aparente, permite crearea de interogări sql pentru operațiuni complexe cu o bază 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.

O nouă bază de date este creată de către operator 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:

CREAȚI TABEL 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_marfei, 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 de sfoară;
  • 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 într-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

MySQL DBMS este distribuit sub licență gratuită Licență publică generală GNU. 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 SGBD 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.