Na dnešním trhu, kde se každý den vygeneruje přibližně 2,5 kvintilionů bajtů dat, je velmi důležité pochopit, jak zacházet s tak obrovským množstvím dat. Zde přichází na scénu strukturovaný dotazovací jazyk nebo SQL. Takže v tomto článku o SQL Tutorial budu diskutovat o následujících důležitých konceptech, které jsou nutností na cestě stát se správcem databáze.
- Úvod do SQL
- Co je SQL?
- Aplikace SQL
- Datové typy SQL
- Operátory SQL
- Nejlepší příkazy SQL
- VYTVOŘIT
- DROP
- ALTER
- ZKRÁTIT
- VYSVĚTLIT
- VLOŽIT DO
- AKTUALIZOVAT
- VYBRAT
- LIKE
- GRANT
- Klíče v databázi
- Omezení SQL
- Normalizace
- Spojení SQL
- Zobrazení
Výukový program SQL:Úvod do SQL
Co je SQL?
Structured Query Language neboli SQL, vyvinutý Donaldem D.Chamberlinem v 70. letech, je jedním z nejpopulárnějších jazyků používaných k manipulaci, ukládání, aktualizaci a získávání dat z relační databáze. SQL se skládá z různých příkazů rozdělených do 4 kategorií, tj. DDL, DML, DCL a TCL pro hraní s daty v databázích. Také relační databáze jako MySQL Databases, Oracle, MS SQL Server, Sybase atd. používají SQL k úpravě dat.
Aplikace SQL
Aplikace SQL jsou následující:
- Pomocí SQL můžete vytvářet a rušit tabulky a databáze.
- Umožňuje uživatelům definovat data v databázích a manipulovat s nimi.
- SQL umožňuje uživatelům přistupovat, upravovat a popisovat data v RDBMS.
- Pomocí SQL můžete nastavit oprávnění k tabulkám, pohledům a procedurám a udělit konkrétní oprávnění různým uživatelům.
- SQL umožňuje vkládání do jiných jazyků pomocí knihoven a modulů SQL.
Nyní, když znáte základy SQL, v dalším výukovém programu SQL nám dejte vědět, jaké jsou různé typy dat SQL.
Datové typy SQL
Datové typy SQL jsou rozděleny do následujících kategorií:
- Číselné – Číselné datové typy umožňují celá čísla se znaménkem i bez znaménka. Lze je dále rozdělit na přesné a přibližné datové typy, kde přesný umožňuje celá čísla ve formě celých čísel a přibližný umožňuje plovoucí celá čísla.
- Řetězec znaků – Tento datový typ umožňuje znaky pevné a proměnné délky. Tento datový typ lze také dále kategorizovat do znaků Unicode, které umožňují pevnou a proměnnou délku znaků Unicode.
- Binární – Binární datové typy umožňují ukládat data ve formátu binárních hodnot s pevnou a proměnnou délkou.
- Datum a čas – Tento typ dat umožňuje ukládat data v různých formátech data a času.
- Jiné – Tato část datových typů obsahuje datové typy, jako je tabulka, XML, kurzor, jedinečný identifikátor a sql_variant.
Pokud chcete podrobně porozumět různým datovým typům SQL, můžete se podívat na podrobného průvodce datovými typy SQL.
Operátoři SQL
Operátory jsou konstrukce, které mohou manipulovat s hodnotami operandů. Uvažujme výraz 4 + 6 =10, zde 4 a 6 jsou operandy a + se nazývá operátor.
SQL podporuje následující typy operátorů:
- Aritmetické operátory
- Bitové operátory
- Operátory porovnání
- Složené operátory
- Logické operátory
Chcete-li se podrobně seznámit s různými operátory podporovanými SQL, klikněte sem. Takže teď, když víte, co je SQL a jeho základy, dejte nám porozumět hlavním příkazům nebo příkazům v SQL.
Výukový program SQL:Nejlepší příkazy SQL
SQL se skládá z různých příkazů nebo příkazů pro přidání, úpravu, odstranění nebo aktualizaci dat v databázi. V tomto článku o SQL tutoriálu budeme diskutovat o následujících tvrzeních:
-
- VYTVOŘIT
- DROP
- ALTER
- ZKRÁTIT
- VYSVĚTLIT
- VLOŽIT DO
- AKTUALIZOVAT
- VYBRAT
- LIKE
- GRANT
V tomto tutoriálu SQL uvažuji níže uvedenou databázi jako příklad, abych vám ukázal, jak psát dotazy pomocí těchto příkazů SQL.
Číslo zákazníka | Jméno zákazníka | Telefonní číslo | Adresa | Město | Země |
1 | Simon | 9876543210 | Donald Street 52 | Hajdarábád | Indie |
2 | Akáš | 9955449922 | Queens Road 74 | Bombaj | Indie |
3 | Patrick | 9955888220 | Hedvábné prkno 82 | Dillí | Indie |
4 | Stejně | 9647974327 | IG Road 19 | Hajdarábád | Indie |
5 | Jan | 9674325689 | Brigádní silniční blok 9 | Bangalore | Indie |
VYTVOŘIT
Příkaz CREATE se používá k vytvoření tabulky, pohledu nebo databáze následujícím způsobem:
VYTVOŘIT DATABÁZI
Slouží k vytvoření databáze.
Syntaxe
CREATE DATABASE DatabaseName;
Příklad
CREATE DATABASE CustomerInfo;
VYTVOŘIT TABULKU
Tento příkaz se používá k vytvoření tabulky.
Syntaxe
CREATE TABLE TableName ( Column1 data type, Column2 data type, .... ColumnN data type );
Příklad
CREATE TABLE Customers ( CustomerID int, CustomerName varchar(255), PhoneNumber int, Address varchar(255), City varchar(255), Country varchar(255) );
VYTVOŘIT ZOBRAZENÍ
Slouží k vytvoření pohledu.
Syntaxe
CREATE VIEW OR REPLACE ViewName AS SELECT Column1, Column2, ..., ColumnN FROM TableName WHERE Condition;
Příklad
CREATE VIEW OR REPLACE HydCustomers AS SELECT CustomerName, PhoneNumber FROM Customers WHERE City = "Hyderabad";
Poznámka: Než začnete vytvářet tabulku a zadávat hodnoty, musíte použít databázi pomocí příkazu USE jako [USE CustomersInfo; ]
DROP
Příkaz DROP se používá k odstranění existující tabulky, pohledu nebo databáze.
DROP DATABASE
Slouží k odstranění databáze. Když použijete toto prohlášení, budou ztraceny kompletní informace v databázi.
Syntaxe
DROP DATABASE DatabaseName;
Příklad
DROP DATABASE CustomerInfo;
PUSTIT TABULKU
Slouží k vypuštění tabulky. Když použijete toto prohlášení, budou ztraceny úplné informace uvedené v tabulce.
Syntaxe
DROP TABLE TableName;
Příklad
DROP TABLE Customers;
ZOBRAZENÍ POHLEDEM
Slouží k odstranění zobrazení. Když použijete toto prohlášení, budou ztraceny úplné informace v zobrazení.
Syntaxe
DROP VIEW ViewName;
Příklad
DROP VIEW HydCustomers;
ALTER
Příkaz ALTER se používá k přidání, odstranění nebo úpravě omezení nebo sloupců v existující tabulce.
ALTER TABLE
Příkaz ALTER se používá k odstranění, přidání a úpravě sloupců v existující tabulce. Můžete použít ALTER TABLE se sloupcem ADD/DROP k přidání nebo odstranění sloupce v tabulce. Kromě toho můžete také ALTER/MODIFY konkrétní sloupec.
Syntaxe
ALTER TABLE TableName ADD ColumnName Data Type; ALTER TABLE TableName DROP COLUMN ColumnName; ALTER TABLE TableName ALTER COLUMN ColumnName Data Type;
Příklad
--ADD Column Gender: ALTER TABLE Customers ADD Gender varchar(255); --DROP Column Gender: ALTER TABLE Customers DROP COLUMN Gender ; --Add a column DOB and change the data type from Date to Year. ALTER TABLE DOB ADD DOB date; ALTER TABLE DOB ALTER DOB year;
ZKRÁTIT
Příkaz TRUNCATE se používá k odstranění informací přítomných v tabulce, nikoli však tabulky samotné. Jakmile tedy použijete tento příkaz, vaše informace budou ztraceny, ale tabulka nebude stále přítomna v databázi.
Syntaxe
TRUNCATE TABLE TableName;
Příklad
TRUNCATE Table Customers;
EXPLAIN
Příkazy EXPLAIN a DESCRIBE jsou synonyma používaná k získání plánu provádění dotazu a informací o struktuře tabulky. Tento příkaz lze použít s příkazy INSERT, DELETE, SELECT, UPDATE a REPLACE.
Syntaxe
--Syntax for DESCRIBE DESCRIBE TableName; --Sample syntax for EXPLAIN EXPLAIN ANALYZE SELECT * FROM TableName1 JOIN TableName2 ON (TableName1.ColumnName1 = TableName2.ColumnName2);
Příklad
DESCRIBE Customers; EXPLAIN ANALYZE SELECT * FROM Customers1 JOIN Orders ON (Customers.CustomerID = Orders.CustomerID);
INSERT INTO
Příkaz INSERT INTO se používá k vložení nových záznamů do tabulky.
Syntaxe
INSERT INTO TableName (Column1, Column2, Column3, ...,ColumnN) VALUES (value1, value2, value3, ...); --If you do not want to mention the column names then use the below syntax, but the order of values entered should match the column data types : INSERT INTO TableName VALUES (Value1, Value2, Value3, ...);
Příklad
INSERT INTO Customers(CustomerID, CustomerName, PhoneNumber, Address, City, Country) VALUES ('06', 'Sanjana', '9654323491', 'Oxford Street House No 10', 'Bengaluru', 'India'); INSERT INTO Customers VALUES ('07', 'Himani','9858018368', 'Nice Road 42', 'Kolkata', 'India');
AKTUALIZACE
Příkaz UPDATE se používá k úpravě záznamů, které se již v tabulce nacházejí.
Syntaxe
UPDATE TableName SET Column1 = Value1, Column2 = Value2, ... WHERE Condition;
Příklad
UPDATE Customers SET CustomerName = 'Aisha', City= 'Kolkata' WHERE EmployeeID = 2;
VYBRAT
Příkaz SELECT se používá k výběru dat z databáze a jejich uložení do výsledkové tabulky zvané sada výsledků .
Syntaxe
SELECT Column1, Column2, ...ColumN FROM TableName; --(*) is used to select all from the table SELECT * FROM table_name; -- To select the number of records to return use: SELECT TOP 3 * FROM TableName;
Příklad
SELECT CustomerID, CustomerName FROM Customers; --(*) is used to select all from the table SELECT * FROM Customers; -- To select the number of records to return use: SELECT TOP 3 * FROM Customers;
Kromě toho můžete použít klíčové slovo SELECT s klauzulemi DISTINCT, ORDER BY, GROUP BY, HAVING a INTO.
LIKE
Tento operátor se používá s klauzulí WHERE k vyhledání zadaného vzoru ve sloupci tabulky. Ve spojení s operátorem LIKE se používají hlavně dva zástupné znaky:
- % – Odpovídá 0 nebo více znakům.
- _ – Odpovídá přesně jednomu znaku.
Syntaxe
SELECT ColumnName(s) FROM TableName WHERE ColumnName LIKE pattern;
Příklad
SELECT * FROM Customers WHERE CustomerName LIKE 'S%';
GRANT
Příkaz GRANT se používá k poskytnutí oprávnění nebo přístupu k databázi a jejím objektům uživatelům.
Syntaxe
GRANT PrivilegeName ON ObjectName TO {UserName |PUBLIC |RoleName} [WITH GRANT OPTION];
kde,
- PrivilegeName – Oprávnění/práva/přístup udělená uživateli.
- Název objektu – Název databázového objektu jako TABLE/VIEW/STORED PROC.
- Uživatelské jméno – Jméno uživatele, kterému jsou uděleny přístupy/práva/privilegia.
- VEŘEJNÉ – Udělit přístupová práva všem uživatelům.
- Název role – Název sady oprávnění seskupených dohromady.
- S MOŽNOSTÍ GRANTU – Udělit uživateli přístup k udělení práv dalším uživatelům.
Příklad
-- To grant SELECT permission to Customers table to admin GRANT SELECT ON Customers TO admin;
Nyní, když znáte hlavní příkazy SQL, dejte nám vědět, jaké jsou různé typy klíčů používaných v databázi. Tento koncept vám pomůže pochopit, jak každá tabulka souvisí s druhou tabulkou v systému správy relačních databází.
Výukový program SQL:Klíče
Následujících 7 typů klíčů, které lze uvažovat v databázi:
- Klíč kandidáta – Soubor atributů, které mohou jednoznačně identifikovat tabulku, lze nazvat jako kandidátský klíč. Tabulka může mít více než jeden kandidátský klíč a z vybraných kandidátských klíčů může být jeden klíč vybrán jako primární klíč.
- Super klíč – Sada atributů, které mohou jednoznačně identifikovat n-tici, se nazývá Super klíč. Kandidátský klíč, primární klíč a jedinečný klíč je tedy superklíč, ale naopak to není pravda.
- Primární klíč – Sada atributů, které se používají k jedinečné identifikaci každé n-tice, je také primárním klíčem.
- Alternativní klíč – Alternativní klíče jsou kandidátské klíče, které nejsou vybrány jako primární klíč.
- Jedinečný klíč – Jedinečný klíč je podobný primárnímu klíči, ale umožňuje ve sloupci jednu hodnotu NULL.
- Zahraniční klíč – Atribut, který může pouze převzít přítomné hodnoty jako hodnoty nějakého jiného atributu, je cizí klíč k atributu, na který odkazuje.
- Složený klíč – Složený klíč je kombinací dvou nebo více sloupců, které jedinečně identifikují každou n-tici.
Doufám, že jste pochopili různé typy klíčů v databázi. Dále v tomto článku o SQL tutoriálu probereme omezení v databázi. Omezení SQL se používají ke zvýšení přesnosti a spolehlivosti dat, která jdou do databáze prostřednictvím tabulky.
Výukový program SQL: Omezení
Omezení SQL zajistí, že nedojde k žádnému porušení z hlediska transakce dat, pokud budou nalezena, akce bude ukončena. Hlavním použitím následujících omezení je omezení typu dat, která mohou být v tabulce.
- NENÍ NULL – Toto omezení se používá k zajištění toho, že sloupec nemůže uložit hodnotu NULL.
- JEDINEČNÉ – Omezení UNIQUE se používá k zajištění toho, aby všechny hodnoty zadané do sloupce nebo tabulky byly jedinečné.
- ZKONTROLUJTE – Toto omezení se používá k zajištění toho, aby sloupec nebo více sloupců vyhovovalo určité podmínce.
- VÝCHOZÍ – Omezení DEFAULT se používá k nastavení výchozí hodnoty pro sloupec, pokud není zadána žádná hodnota.
- INDEX – Toto omezení se používá pro indexy v tabulce, pomocí kterých můžete velmi rychle vytvářet a načítat data z databáze.
Pokud se chcete dozvědět o následujících omezeních podrobně se syntaxí a příklady, můžete se podívat na další články o SQL. Takže, když jste teď o klíčích a omezeních v databázi, v dalším článku o SQL tutoriálu se podíváme na zajímavý koncept Normalizace.
Výukový program SQL:Normalizace
Normalizace je proces organizace dat, aby se zabránilo duplicitě a redundanci. Existuje mnoho po sobě jdoucích úrovní normalizace a ty se nazývají normální formy . Také každá následná normální forma závisí na předchozí. Následují běžné formy:
Abyste porozuměli výše uvedeným normálním formám, zvažte následující tabulku:
Podle výše uvedené tabulky můžete jasně rozeznat redundanci dat a duplicitu dat. Pojďme tedy tuto tabulku normalizovat. Chcete-li začít s normalizací databází, měli byste vždy začít s nejnižší normální formou, tj. 1NF, a poté případně přejít k vyšším normálním formám.
Nyní se podívejme, jak můžeme provést první normální formu pro výše uvedenou tabulku.
První normální formulář (1NF)
Ujistěte se, že databáze musí být v 1NF , každá buňka tabulky by měla mít jednu hodnotu. Takže v podstatě všechny záznamy musí být jedinečné . Výše uvedená tabulka bude normalizována na 1NF, jak je uvedeno níže:
Pokud si všimnete v tabulce výše, všechny záznamy jsou jedinečné. Existuje však mnoho redundance a duplikace dat. Abychom tomu zabránili, normalizujme databázi do druhé normální formy.
Druhá normální forma (2NF)
Abyste se ujistili, že databáze musí být v 2NF , databáze by měla být 1NF a měl by takémít primární klíč s jedním sloupcem . Výše uvedená tabulka bude normalizována na 2NF, jak je uvedeno níže:
Pokud dodržíte výše uvedené tabulky, má každá tabulka primární klíč s jedním sloupcem. Existuje však velká redundance dat a duplikace několika sloupců. Abychom tomu zabránili, normalizujme databázi do třetí normální formy.
Třetí normální forma (3NF)
Abyste se ujistili, že databáze musí být v 3NF , databáze by měla být v 2NF a nesmí mít žádné přechodné funkční závislosti . Výše uvedené tabulky budou normalizovány do 3NF, jak je uvedeno níže:
Pokud dodržíte výše uvedené tabulky, databáze nemá žádnou tranzitivní závislost. Po tomto kroku tedy nemusíme naši databázi dále normalizovat. Pokud však uvidíte nějaké anomálie nebo více než jeden kandidátský klíč, můžete pokračovat s další vyšší normální formou, tj. BCNF.
Normální forma Boyce-Codda (BCNF)
Aby bylo zajištěno, že databáze musí být v BCNF, musí být databáze přítomna v 3NF a tabulky musí být dále rozděleny, aby byl přítomen pouze jeden kandidátský klíč.
Tímto se dostáváme ke konci normalizace. Nyní, dále v tomto SQL tutoriálu, pojďme diskutovat o důležitém konceptu v SQL, kterým je spojení.
Výukový program SQL:Připojení
Spojení se používají ke spojení řádků ze dvou nebo více tabulek na základě souvisejícího sloupce mezi těmito tabulkami a také na základě několika podmínek. Existují hlavně čtyři typy spojení:
- INNER JOIN: Toto spojení vrátí ty záznamy, které mají odpovídající hodnoty v obou tabulkách.
- PLNÉ PŘIPOJENÍ: FULL JOIN vrátí všechny záznamy, které mají shodu v levé nebo pravé tabulce.
- LEVÉ PŘIPOJENÍ: Toto spojení vrátí záznamy z levé tabulky a také ty záznamy, které splňují podmínku z pravé tabulky.
- SPRÁVNÉ PŘIPOJENÍ: Toto spojení vrátí záznamy z pravé tabulky a také ty záznamy, které splňují podmínku z levé tabulky.
Toto byl krátký popis na JOINS, ale pokud chcete podrobný popis na JOINS s podrobným příkladem, můžete se podívat na můj článek o SQL JOINS. Dále v tomto SQL tutoriálu probereme poslední koncept tohoto článku, tj. Views.
Výukový program SQL:Zobrazení
Pohled v SQL je jedna tabulka, která je odvozena z jiných tabulek. Pohled obsahuje řádky a sloupce podobné skutečné tabulce a obsahuje pole z jedné nebo více tabulek. Viz obrázek níže:
Chcete-li porozumět tomu, jak vytvořit a zrušit zobrazení, můžete se podívat na příkazy CREATE a DROP uvedené výše. Tím se dostáváme ke konci tohoto článku o SQL tutoriálu. Doufám, že jste našli tento článek informativní. Pokud se také připravujete na pohovory s administrátory databáze a hledáte úplný seznam otázek, můžete se podívat na náš článek Otázky k pohovoru SQL.
Pokud se chcete dozvědět více o MySQL a poznat tuto relační databázi s otevřeným zdrojovým kódem, podívejte se na naše certifikační školení MySQL DBA, které je součástí živého školení pod vedením instruktora a skutečného - životní zkušenosti s projektem. Toto školení vám pomůže porozumět MySQL do hloubky a pomůže vám dosáhnout zvládnutí tohoto předmětu.
Máte na nás otázku? Uveďte to prosím v sekci komentářů tohoto SQLTutorial a my se vám ozveme.