Úvod do omezení serveru SQL

Omezení jsou pravidla a regulace, které se vztahují na sloupec nebo tabulku, z nichž nelze do tabulky vložit nechtěná data. Můžeme určit limit datového typu, který lze uložit pomocí omezení v konkrétním sloupci v tabulce. Nyní uvidíme podrobně omezení serveru SQL.

Jak určit omezení?

Omezení můžeme definovat v době vývoje tabulky pomocí příkazu create table. Po vytvoření tabulky můžeme také určit omezení pomocí příkazu ALTER TABLE.

Syntax

Pomocí této syntaxe vytvořte tabulku

Create TABLE Information_ table
(
Column1 data_type(Size) Constraints_name,
Column2 data_type(Size) Constraints_name,
Column3 data_type(Size) Constraints_name,
);

  • Information_table: Název tabulky, která má být vytvořena.
  • Data_type: Typ dat, který lze uložit do pole.
  • Název omezení: Toto znamená název omezení. Příklad tedy NENÍ NULL, UNIQUE, PRIMARY atd.

Omezení v SQL

Některá omezení v SQL jsou následující:

1. NENÍ NULL

Tato NOT NULL omezení říkají, že nemůžeme uložit nulovou hodnotu ve sloupci. To znamená, že v tomto konkrétním sloupci už nemůžeme uložit nulovou hodnotu, pokud je sloupec označen jako NENÍ NULL. Nebudete moci vkládat nový řádek do tabulky, aniž byste do tohoto pole zadali jakoukoli hodnotu.

Příklad

Vytváříme kolej s názvem tabulky s názvem ID pole a e-mailem NENÍ NULL. Proto bez zadání jakékoli hodnoty v tomto poli nebudete moci do tabulky vložit nový řádek.

Syntax

Create Table College
(
ID name (10) NOT NULL,
Email (15) NOT NULL,
ADDRESS varchar(50)
);

2. JEDINEČNÉ

Toto omezení UNIQUE pomůže určit každý řádek v tabulce jedinečný. Například sloupec Singular, Všechny řádky musí mít jinou hodnotu. V tabulce můžeme mít více než jeden sloupec UNIQUE. SQL používá speciální omezení ke kontrole, zda má dílčí dotaz ve výsledku duplicitní n-tice.

Body k zapamatování

  1. Vyhodnocuje prázdný dílčí dotaz na hodnotu true.
  2. Vrací true, pokud v poddotazu existují dva dvojité řádky s alespoň jedním atributem jako NULL.

Syntax

Create Table College
(
ID int (6 ) NOT NULL UNIQUE,
NAME varchar(15),
ADDRESS Varchar(50),
);

3. ZÁKLADNÍ KLÍČ

Primární klíč se používá k identifikaci jedinečných řádků z tabulky. Pokud tabulka obsahuje základní klíč jako pole, nemůže toto pole obsahovat nulové hodnoty a protože primární klíč jedinečně identifikuje každý řádek, měly by všechny řádky obsahovat jedinečné hodnoty. Můžeme tedy říci jinými slovy, jedná se o kombinaci NOT NULL a UNIQUE omezení. Níže bude vytvořena tabulka s názvem Student a jako primární klíč bude uvedeno ID pole

Syntax

Create Table College
(
ID INT(8) NOT NULL UNIQUE,
Address varchar(50),
Email Varchar(20),
Primary Key (ID)
);

4. ZAHRANIČNÍ KLÍČ

Cizí klíč (FK) je kombinace sloupců nebo sloupců, která se používá ve dvou tabulkách k vytvoření a vynucení datového vztahu. Zde je ukázkový diagram ukazující vztah tabulky zaměstnanců a oddělení. Pokud se na to podíváte pozorně, všimnete si, že sloupec dept_id INT tabulky zaměstnanců odpovídá sloupci primárního klíče tabulky oddělení. Sloupec ID oddělení tabulky zaměstnanců je tedy cizím klíčem k tabulce oddělení.

V MySQL, když vytvoříte tabulku, která je zobrazena níže, můžete vytvořit cizí klíč nastavením omezení FOREIGN KEY. Následující příkaz nastavuje cizí klíč ve sloupci College tabulky zaměstnanců, který odkazuje na sloupec College tabulka tabulky oddělení.

Syntax

Create table College (
Emp_id Int NOT NULL PRIMARY KEY,
emp _Name VArchar(20) NOT NULL,
hire_DATE NOT NULL,
salary INT,
Dept_ID INT,
Foreign Key (Dept_id)References Departments (dept_Id)
);

5. ZKONTROLUJTE OBMEDZENÍ

Pomocí limitu CHECK můžeme určit podmínku pole, která by měla být splněna při zadávání hodnot pro toto pole. Například dotaz níže vytvoří tabulku Student a určí podmínku pole AGE jako (AGE> = 18). Jinými slovy, uživatel nemá dovoleno vkládat do tabulek AGE <18 žádné záznamy.

Syntax

Create table dogs(
ID INT NOT NULL,
Name VARCHAR (25) NOT NULL,
Breed Name Varchar (30) NOT NULL,
AGE OF BREED INT,
GENDER VARCHAR(9),
PRIMARY KEY (ID),
Check (Gender in ('male', 'female', 'UNKNOW'))
);

POZNÁMKA: Omezení kontroly ve výše uvedeném příkazu SQL omezuje GENDER, aby patřil pouze do určených kategorií. Pokud je přidán nový tupl nebo je existující tuple ve vazbě aktualizován GENDEREM, který nepatří do žádné ze tří uvedených kategorií, bude odpovídající aktualizace databáze přerušena.

Závěr

Proto jsme se v tomto tutoriálu Omezení SQL dozvěděli o různých omezeních v SQL. Nejprve jsme viděli krátký úvod do omezení SQL. Poté přejdeme k typům SQL Constraint. Diskutovali jsme také o cizím klíči SQL, primárním klíči SQL. Naučili jsme se také SQL Server Drop Constraint a Integrity Constraint na SQL Serveru.

Doporučené články

Toto byl průvodce omezeními serveru SQL. Zde jsme diskutovali o tom, jak specifikovat omezení, typy omezení s jejich konkrétní definicí, respektive příklady. Další informace naleznete také v dalších navrhovaných článcích -

  1. Úvod do funkcí řetězců T-SQL
  2. Co je SQL Injection?
  3. Co je SSRS? | Zprávy | Výukové programy
  4. Co je postup v SQL?
  5. Typy připojení na serveru SQL
  6. Různé operace související s n-ticemi
  7. Top 6 typů spojení v MySQL s příklady