Tento jazyk slouží k extrahování a správě DBMS v RDMS, je místo pro ukládání relačních dat, které mají několik řádků a sloupců. SQL umožňuje přijímat a zpracovávat tabulky v RDMS. V SQL můžete vytvořit procedurální programy s iterací a podmínkami. K databázi můžete přistupovat pomocí příkazů stejným způsobem jako v PHP, nebo pomocí vizuálního softwaru, jako je phpMyAdmin, který běží na serveru nebo počítači pomocí XAMPP, stejně jako mnoho jiných programů místních serverů. Téměř všechny moderní systémy pro správu databází jsou založeny na tomto jazyce.
Historické předpoklady SQL
Zkratka SQL znamená "strukturovaný vyhledávací jazyk", který chápe prakticky všechny DBMS. To bylo vyvinuto IBM v sedmdesátých letech s původním jménem SEQUEL a jeho pravé jméno pochází z osmdesátých let. SQL byl certifikován mezinárodní organizací ISO. Zde jsou hlavní kroky v tomto procesu:
standard ANSI v roce 1986;
ISO (SQL1) v roce 1987, revidovaný v roce 1989;
ISO (SQL2) v roce 1992;
SQL3 byl vytvořen v roce 1999 ANSI a ISO.
Standard ISO SQL 2006 se používá ke správě souborů XML, jako je import dat XML do databáze nebo export XML obsahu a omezení SQL. Navzdory standardizaci ISO, skutečné použití různých editorů DBMS má rozdíly, pokud jde o:
detaily syntaxe;
psaní objednávek;
přesná práce řídících orgánů;
zavedení nových typů dat (obrázky, animace, video, hypertextové odkazy)a tak dále).
Bez ohledu na použitý software MySQL (nebo MariaDB), PostgreSQL, Oracle, NoSQL, stejně jako Cassandra - stejná syntaxe s malými rozdíly. Stručně řečeno, existuje pouze jeden jazyk SQL, ale každý editor DBMS implementuje svůj vlastní dialekt. "Slovník", který umožňuje přepnout z jednoho dialektu na jiný, se nazývá ODBC (Open Data Base Connectivity). Byla vytvořena v aplikaci Microsoft 1993 pro omezení SQL.
Funkce programovacího jazyka
SQL je nejoblíbenější mezi počítačovými jazyky spojenými se systémy správy databáze. Nejslibnější směry označují strukturované dotazy. Předmětem několika mezinárodních standardizací, z nichž první se týká roku 1986 a stále se rozvíjí. Realizace odpovídá relační algebru, ale často se odchyluje od tradičních výpočtů. Při implementacích jsou rozdíly mezi horním a malým písmenem, s výjimkou řádků, obvykle ignorovány. Omezení SQL umožňuje:
provádět relační algebra;
upravovat kopie;
upravte vztah v databázi.
Vyjádření omezení integrity
Jedná se o návrh, který omezuje tabulkovou úpravu provedenou klientskými žádostmi tak, aby vstupy odpovídaly očekávaným výsledkům. Jsou uloženy při vytváření:
omezení SQL.
VÝCHOZÍ.
NULL.
SINGLE.
KONTROLA.
SQL definuje výchozí hodnotu, když základní pole není s využitím klauzule DEFAULT komunikováno. Zjednodušuje tvorbu tabulek a zajišťuje, že pole není prázdné. Ve větě DEFAULT musí být hodnota přiřazena. Může to být jeden z následujících typů:
digitální konstanta;
alfanumerická konstanta (řádek);
Klíčové slovo USER (uživatelské jméno);
klíčové slovo NULL;
klíčové slovo CURRENT_DATE (datum vstupu);
klíčové slovo CURRENT_TIME (vstupní čas);
klíčové slovo CURRENT_TIMESTAMP (datum a čas vstupu).
Datové typy v databázích
V syntaxi například type_field1 field_type2 atd. Určete typ dat, který bude obsahovat příslušné pole. V zásadě se toto pravidlo používá k přenosu do systému tak, aby přidělil odpovídající paměťový prostor v závislosti na velikosti dat. Systém nebude přidělit stejný prostor pro linku jako pro celé číslo. V phpMyAdmin se při vytváření tabulky zobrazí seznam přijatých typů v rozevíracím seznamu. Typ dat
typ
[d])
číslo n číslice [d (neobyazatelno) po desyatychnoy bod]
SMALLINT
16bitové celé číslo se znaménkem
INTEGER
) plováku
počet plovoucí bod
Datum
formát data dd /mm
hodin
TIMESTAMP
Datum a čas
CHAR (l)
(n Zde je příklad: CREATE TABLE table_name (sloupec1 typ_champ1, sloupec2) Typ_champ2, colonne3 typ_champ3).
Atributy omezení SQL
Aby bylo možné vytvořitvztah, musíte znát omezení integrity. Pro tento atribut platí následující omezení:
výchozí hodnota je výchozí hodnota pro tento atribut;
není null - prázdný nebo neznámý (nula) je pro tento parametr zakázán;
null - pro tento atribut povolíme prázdné nebo neznámé (nula (výchozí),
jedinečné - všechny hodnoty tohoto atributu musí být jedinečné;
klíč pimary - tento atribut je primární klíč (toto jedinečné omezení SQL se může objevit jednou) a neznamená žádný null jedinečný;
reference ta [(at)) - tento parametr má existující atribut at, který je povinný, jedinečný, tabulky ta, pokud není specifikováno, je primární klíč, ta;
reference ta [(at)] na kaskádě vymazání - podobně jako předchozí
Následující omezení omezení pro SQL se vztahují na jeden nebo více atributů nebo tabulky:
jedinečný (např. at1, atN) - všechny hodnoty v této množině atributů musí být jedinečné;
kontrola (te) - test musí být pro tuto sadu parametrů pravdivý.
Vytváření vztahů
Vztah SQL je také označován jako tabulka. Vytvoření vztahu je vyjádřeno v SQL pomocí tabulky vytvoření nápovědy.
Vygenerovaná tabulka je prázdná: obsahuje atributy (sloupce) definované při jejím vytvoření, ale ne výskyt (řetězec). Je možné a vhodné určit atributy integrity pro atributy.
A také je možné zavolat omezení, aby se snadněji identifikovala. V opačném případě získá název, který automaticky poskytuje databáze.
Vytvoření tabulky
NOT NULL klíčové slovo umožňuje určit, které je nutné zadat do pole, bude tato databáze odmítne vložit řádky, které nejsou definované pole, které obsahuje návrh na NOT NULL. Políčko můžete zkontrolovat pomocí příkazu CHECK (), který má logickou podmínku pro hodnotu mezi závorkami. Pokud se tato hodnota liší od hodnoty NULL, DBMS prověří pomocí logických podmínek příkazy SELECT.
Návrh UNIQUE umožňuje kontrolovat pole a zaručuje, že hodnoty sloupců jsou různé. Klíčové slovo CONSTRAINT přiřadí název omezení tak, aby fungoval, když nebyla ověřena daná věta. Není-li klauzule CONSTRAINT zadána, název bude libovolně poskytnut DBMS. Je však nepravděpodobné, že by to bylo jasné, a to lze jen těžko realizovat vůbec kdy dojde k chybě celistvost.
Příklad datovému měnit tabulky omezení
Pro ilustraci následující pořadí, zvažte tabulka "produkt":
id hodnota (ID)
nom (název )
kočka? gorie (kategorie)
akcií (akcie)
prix (cena )
1
počítače
pro zpracování dat
( 5
950
2
)
pro zpracování dat
32
35
3 (207 )
myš
zpracování je
16
30
4
tužka
Dodávka
(238 ) 147
2
přidat vazby operátor SQL se může připojit několik slov v dotazu. Zachování stejného stolu jako předtím filtrovat pouze počítačové produkty jsou téměř chybí skladem (méně než 20 titulů), spusťte následující dotaz: SELECT * FROM produitWHERE kočka Gorie = ‚‘ Informatique a akciích (246?
) Sklad (podíly)
, cena (cena)
1
počítače
pro zpracování dat
, 5
, 950
(286 ) 3
, myší
pro zpracování dat
16
30
k filtrování dat a mají jen informace o výrobku "počítač" nebo "klávesnice" by měl udělat další vyhledávání: SELECT * FROM produitWHERE nom = 'ordinateur' OR nom = ' clavier ‚Tento jednoduchý požadavek vrátí následující výsledky:
id hodnota (ID)
nom (název)
cat ? gorie (kategorie)
vozidel (podíly)
, cena (cena)
1
počítače
pro zpracování dat
, 5
(341 ) , 950
2
klávesnice
zpracování dat
32
35
Je třeba připomenout, že operátoři mohou být o Připojeno pro výkonné vyhledávání. Můžete filtrovat potravin „počítač“ s rozpětím menším než 20 produktů a „dodávky“ s rozpětím menším než 200následované vyhledávacím SQL alter tabulku přidat omezení: SELECT * FROM produitWHERE (kat gorie = 'informatique' A inventář id hodnota (ID)
nom (název) (370? )
kočka? gorie (kategorie)
akcií (akcie)
prix (cena) (382 )
1
počítače
pro zpracování dat
5
, 950
2
, myší
(412 ) zpracování dat
16
30
4 (427 )
tužka
dodání
, 147
2
Identifikační klíče
až cizího klíče SQL s omezujícími podmínkami, klávesy lze definovat, že je určit sloupce, jejichž znalost vám umožní přiřadit přesně jeden z nich a jeden řádek. Sada sloupců, které jsou součástí aktuální tabulce se nazývá primární klíč a stanovil návrh primární klíč následovaný seznamu sloupců, oddělený čárkami v závorkách. Už nepřijímají hodnotu NULL by měla být taková, aby dva řádky nemohly mít současně stejnou kombinaci hodnot pro tyto sloupce. PRIMARY KEY (kolonie1 kolonie2). Po zobrazení seznamu sloupců, jež má určit primární klíč v tabulce, použije nabídku SQL přidat vazby cizí klíč, následovaný seznamem aktuálního sloupce tabulky, oddělený čárkami, v závorkách. Pak v závorkách najdete návrh REFERENCES, následovaný názvem externí tabulky a seznam odpovídajících sloupců oddělených čárkami. FOREIGN KEY (colonne1 colonne2) Odkazy Nom_de_la_table_etrangere (colonne1colonne2)
primární klíč
zájmy mimo úložiště databáze - je uspořádat toto úložiště a umožňujíurčitá pravidla. Takže pro každý z tabulek je obvykle určen primární klíč. Při prezentaci bude jednoznačně identifikovat vyhledávání podle řádku. Proto při vykazování sloupce jako klíčového DBMS automaticky vytvoří index omezení. Může být splněno:
databáze název podařilo omezení, pokud se nazývají primární klíč. Počítač může být také vytvořen podruhé prostřednictvím pořadí změn v tabulce. Tento primární klíč bude absolutním identifikátorem pro použití. DBMS se neobejde bez něj, protože rowid, takže je potřeba pro primární klíč není technicky existuje, ale má malý smysl aplikací. Tato primární klíč ve většině případů omezuje integritu, tj správu určitých dat v jedné tabulce než jiné parametry, které patří do jiných tabulek.
Například, řízení vztahů se zákazníky databáze dostupnost zakázáno bez faktur na objednávku. Vytvořte v tabulce účtů externí klíč, který bude omezen přítomností klíče.
Omezení cizí klíč
Pro PC omezení cizí klíč (FK) je k vytvoření tabulky, pomocí procesu nastavení klíče a indexy s nimi související, který bude vytvořen na FK, takže po připojení žádosti o připojení jednodušší. Kromě omezení primárního nebo externího klíče existují i další omezení:
Například omezení jednoty jiný než ten, který odpovídá primární klíč. Musíte vytvořit jedinečný index: vytvořit jedinečný indexnum_s? cu on personne. Další možností omezení je ověřovací limit, který obvykle umožňuje určit rozsah nebo hodnotu formátu. Pozitivní hodnota pro spotřebu je měřítkem zdvořilosti (ekvivalent ENUM pro některé další DBMS) a je uložena velkými písmeny:
DBMS tedy umožňuje vytvářet omezení na integritu všech druhů, ale jakmile jsou aplikovány, není možné koncept aktivně /neaktivní. Neaktivní omezení nemá vliv na práci databáze (vložení, odstranění,). Čas potřebný k opětovnému aktivaci napětí však může být zdlouhavý, v závislosti na postupech, které je třeba provést, aby se zkontrolovalo toto omezení omezení SQL. Ale je obvykle zajímavé zakázat omezení. Toto omezení je zakázáno následovně: ALTER TABLE ma_table DISABLE CONSTRAINT ma_constraint; A aktivováno: ALTER TABLE ma_table ENABLE CONSTRAINT ma_constraint; Samozřejmě je třeba poznamenat, že jakékoli (aktivované) omezení použité v databázi vyžaduje další zpracování pro vložení, modifikace nebo odstranění. Tyto procesy zpravidla zpomalují používání databáze, a proto by měly být používány ekonomicky. Příkaz ALTER TBLE změní strukturu tabulky. Pokud je použit aktuální dotaz, příkaz ALTER čeká na jeho ukončení. Použijte příkaz: Upravit hodnotu sloupce. Výchozí hodnoty platí pro následující příkazy INSERT, nikoliv pro řádky. Přejmenování sloupců nebo tabulek bez změny typu v tomto příkazu můžete sloupec klíčového slova ignorovat. Jazyk neumožňuje změnit omezení. Místo toho jsouby měla odstranit omezení nebo vytvořit. Změňte délku sloupce varchar. Pokud tabulka odkazuje na uloženou proceduru, můžete přidat nebo odebrat sloupec. Můžete odstranit uložené procedury před volbou ALTER TABLE a potom znovu ji po editaci tabulky.
Spoušť: záruka referenční integrity
Vnější klíče slouží k určení sloupců tabulky, které zaručují spolehlivost jiné tabulky. To znamená, že prvky se nazývají spouštěče, aby zajistily, tato omezení jsou označeny termínem referenční integritě (y) a Ujistěte se, že řetězec je použit s další tabulka skutečně existuje. Tyto žabky jsou ve stavu „Odstranit“ a „Update“:
ON DELETE - doprovázený argumenty v rovnátka, které umožňují určit akci provedenou odstraněním linku.
CASCADE - označuje kaskáda odstranění řádků, jejichž klíče odpovídá primární adresa je.
omezují - indikuje chybu při mazání hodnotu odpovídající klíč.
SET NULL - klade NULL řetězec, pokud je odstraněna hodnota.
nastavení výchozích - vloží výchozí hodnotu (která by měla být v tomto parametru), v řadě, je-li odstraněna hodnota.
V „Update“ jít argumentů ve složených závorkách, které umožňují určit akci provedenou změnou řádku, který je součástí klíče:
CASCADE - označuje kaskádu modifikace linky venkovní stůl, jehož klávesy odpovídají tlačítkům změněných řádků.
RESTRICT - označuje chybu odpovídajícího tlačítka.
SET NULL -klade NULL řetězec, změna v hodnotě odpovídající klíč.
nastavení výchozích - vloží výchozí hodnotu, která by měla být v tomto parametru v řádku, změna v hodnotě odpovídající klíč.
přijetí - výraz, který je třeba provést při editaci dat, takže mohou být vykonani.Takym způsob, zajišťují integritu dat.
Jejich syntaxe je následující: CREATE UPLATŇOVÁNÍ Nom_de_la_contrainte pro kontrolu (expression_conditionnelle) Podmínky, které musí být provedeny, lze provést (a obvykle) s návrhy SELECT.