Svaki od nas redovito se suočava i koristirazličite baze podataka. Kada odaberemo adresu e-pošte, radimo s bazom podataka. Baze podataka koriste usluge pretraživanja, banke za pohranu korisničkih podataka, itd.
No, unatoč stalnoj upotrebi baza podatakapodataka, čak i za mnoge programere softverskih sustava, postoje mnoge "bijele mrlje" zbog različitog tumačenja istih pojmova. Mi ćemo dati kratku definiciju glavnih pojmova baza podataka prije ispitivanja SQL jezika. Pa, onda.
baza podataka - datoteka ili skup datoteka za spremanje naručenihstrukture podataka i njihova međusobna povezanost. Vrlo često se baza podataka naziva sustav za upravljanje bazom podataka (DBMS). Baza podataka je samo spremište informacija u određenom formatu i može raditi s različitim DBMS-ovima.
stol - zamislite mapu u koju pohranjujetedokumente grupirane određenom značajkom, na primjer, popis naloga za prošli mjesec. Ovo je tablica u bazi podataka računala. Zasebna tablica ima jedinstveni naziv.
Vrsta podataka - Vrsta informacija koja se može pohraniti u zasebni stup ili redak. To mogu biti brojevi ili tekst određenog formata.
Stupac i String - svi smo radili s proračunskim tablicama, koji također sadrže retke i stupce. Svaka relacijska baza podataka funkcionira s tablicama na sličan način. Redci se ponekad nazivaju zapisi.
Primarni ključ - svaki redak tablice može imati jedan ili više stupaca za jedinstvenu identifikaciju. Bez primarnog ključa vrlo je teško ažurirati, mijenjati ili brisati potrebne retke.
SQL upitnik (Engl. Strukturirani jezik upita) dizajniran je samo za rad s bazama podataka i trenutno je standard za sve popularne DBMS-ove. Sintaksa jezika sastoji se od malog broja operatera i lako je naučiti. No, unatoč svojoj vanjskoj jednostavnosti, omogućuje stvaranje sql upita za složene operacije s bazama podataka bilo koje veličine.
Od 1992 postoji opće prihvaćeni standard naziva ANSI SQL. Ona definira osnovnu sintaksu i funkcije operatora, a podržava ih sve vođe tržišta baza podataka, kao što je ORACLE Microsoft SQL Server. Nemoguće je uzeti u obzir sve značajke jezika u jednom malom članku pa ćemo ukratko razmotriti samo osnovne SQL upite. Primjeri ilustriraju jednostavnost i mogućnosti jezika:
Svi stupci u tablici baze podataka pohranjuju jednu vrstu podataka. Vrste podataka u SQL-u isti su kao i na drugim programskim jezicima.
Vrsta podataka | opis |
INT | cijeli brojevi |
REAL | Brojevi s pomičnim zarezom |
TEKST | Niz znakova s promjenjivom duljinom |
DATE | sql upit "datum" u različitim formatima |
VRIJEME | vrijeme |
CHAR | Tekstni nizovi fiksne duljine |
Možete stvoriti nove baze podataka, tablice i druge upite u SQL na dva načina:
Operater je stvorio novu bazu podataka CREATE DATABASE <naziv baze podataka>;, Kao što vidite, sintaksa je jednostavna i sažeta.
Izrađujemo tablice unutar baze podataka s izjavom CREATE TABLE sa sljedećim parametrima:
Kao primjer, izradite robnu tablicu sa sljedećim stupcima:
kolona | opis |
commodity_id | ID proizvoda |
VENDOR_ID | ID dobavljača (vanjske ključne tablice dobavljača) |
commodity_name | Naziv proizvoda |
commodity_price | cijena |
commodity_desc | opis |
Izradite tablicu:
CREATE TABLE COMMODITY
(commodity_id CHAR (15) NOT NULL,
dobavljač_ CHAR (15) NOT NULL,
commodity_name CHAR (254) NULL,
commodity_price DECIMAL (8,2) NULL,
commodity_desc VARCHAR (1000) NULL);
Stol se sastoji od pet stupaca. Nakon što je naziv vrsta podataka, stupci su odvojeni zarezima. Vrijednost stupca može biti null (NULL) ili mora biti popunjena (NOT NULL), a to se određuje kada se tablica stvara.
Poslužitelj za dohvaćanje podataka najčešće se koristi SQL upit. Da biste dobili informacije, morate odrediti što želimo odabrati iz takve tablice. Prvo jednostavan primjer:
SELECT commodity_name FROM Commodity
Nakon SELECT izjave, navodimo naziv stupca za preuzimanje podataka, a FROM određuje tablicu.
Rezultat upita bit će sve linijetablice s vrijednostima Commodity_name u redoslijedu u kojem su unesene u bazu tj. bez razvrstavanja. Da biste naručili rezultat, upotrijebite dodatnu klauzulu "ORDER BY".
Da bismo upitao više polja, navodimo ih zarezom, kao u sljedećem primjeru:
SELECT commodity_id, commodity_name, commodity_price IZ robom
Moguće je dobiti što zbog niza upita vrijednosti svih stupaca. Da biste to učinili, upotrijebite znak "*":
ODABERITE * OD robne marke
Da biste dodali redak u tablicu, upotrijebite SQL upite s INSERT izvodom. Dodavanje se može obaviti na tri načina:
Da biste dodali cijelu liniju, morate navesti naziv tablice i stupce novog retka. Dajmo primjer:
INSERT U robu VALUES ("106", "50", "Coca-Cola", "1.68", "No Alcogol,)
Primjer dodaje novi proizvod u tablicu. Vrijednosti su specificirane nakon VALUES za svaki stupac. Ako za stupac nema odgovarajuće vrijednosti, morate navesti NULL. Stupci su ispunjeni vrijednostima redoslijedom navedenim prilikom izrade tablice.
U slučaju dodavanja samo dijela niza, morate izričito navesti nazive stupaca, kao u primjeru:
INSERT U robu (commodity_id, vendor_id, commodity_name)
VALUES ("106", "50", "Coca-Cola")
Ušli smo samo identifikatore robe, dobavljača i njegovo ime, a preostala polja ostala su prazna.
Uglavnom, INSERT se koristi za dodavanje žice, ali se također može koristiti za dodavanje rezultata SELECT izjave.
Da biste promijenili podatke u polju tablice baze podataka, morate koristiti UPDATE izjavu. Operator se može koristiti na dva načina:
UPDATE se sastoji od tri glavna elementa:
Razmotrimo primjer. Priznajemo, kod robe s ID = 106 cijena se promijenila, stoga se ova linija mora ažurirati. Napišite sljedeću izjavu:
UPDATE Commodity SET commodity_price = "3.2" WHERE commodity_id = "106"
Naveli smo naziv tablice, u našem slučaju Robu, gdje će ažuriranje biti izvršeno, a zatim nakon postavljanja nove vrijednosti stupca i pronaći željeni zapis, označavajući WHERE vrijednost u WHERE klauzuli.
Za promjenu broja stupaca nakon SET izjava navodi nekoliko pari stupac vrijednosti odvojene zarezom. Gledamo primjer u kojem se ime i cijena proizvoda ažuriraju:
UPDATE roba SET commodity_name = 'Fanta', commodity_price = "3.2" WHERE commodity_id = "106"
Možete izbrisati podatke u stupcuto je NULL ako struktura tablice to dopušta. Treba imati na umu da je NULL točno "ne" vrijednost, a ne nula u obliku teksta ili broja. Izbriši opis proizvoda:
UPDATE roba SET commodity_desc = NULL WHERE commodity_id = "106"
SQL zahtjevi za brisanje redaka u tablici izvode se pomoću obrasca DELETE. Postoje dvije svrhe:
Primjer brisanja jednog retka iz tablice:
DELETE FROM Commodity WHERE commodity_id = "106"
Nakon DELETE FROM, navedite naziv tablice ukoji će biti izbrisan redaka. Klauzula WHERE sadrži uvjet za odabir redaka za brisanje. U primjeru mi brišemo retku stavke s ID = 106. Vrlo je važno navesti gdje. preskakanje ovog operatora rezultirat će uklanjanjem svih redaka u tablici. To vrijedi i za promjenu vrijednosti polja.
Izjava DELETE ne specificira nazive stupaca i metakaraktere. Ona potpuno uklanja linije i ne može izbrisati niti jedan stupac.
Uobičajeno se koristi Microsoft Accessinteraktivni način stvaranja tablica, baza podataka, za upravljanje, izmjenu, analizu podataka u bazi podataka i za provođenje upita SQL Accessa pomoću praktičnog interaktivnog Query Designera pomoću kojeg možete graditi i odmah izvršiti SQL izjave bilo koje složenosti.
Način rada za pristup poslužitelju je također podržan, uzkoji se DBMS pristup može koristiti kao generator SQL upita bilo kojem ODBC izvoru podataka. Ova značajka omogućuje Pristup aplikacijama interakciju s bazama podataka bilo kojeg formata.
Budući da SQL upiti nemaju sve mogućnostiprocesorski programski jezici kao što su petlje, grane i sl., DBMS dobavljači razvijaju vlastitu verziju SQL-a s naprednim mogućnostima. Prije svega, to je podrška pohranjenim postupcima i standardnim operatorima postupovnih jezika.
Najčešći dijalekti jezika su:
MySQL baza podataka je podijeljena pod besplatnoGNU Opća javna licenca. Postoji komercijalna licenca s mogućnošću izrade prilagođenih modula. Kao sastavni dio najpopularnijih skupova internetskih poslužitelja, kao što su XAMPP, WAMP i LAMP te je najpopularnija baza podataka za razvoj aplikacija na Internetu.
Razvio ga je Sun Microsystems itrenutno podržava Oracle. Podržava baze podataka do 64 terabajta, SQL standardnu sintaksu: 2003, replikaciju baze podataka i usluge oblak.
</ p>