Archív tagu: DDL

SQL Hierarchie Díl 1 – jak správně vytvořit parent-child strukturu v tabulce?

Někdy potřebujeme v SQL vytvořit tabulku, která obsahuje hierarchii. Hierarchie je struktura (někdy se označuje jako parent-child hierarchie), která obsahuje závislosti mezi jednotlivými členy. Můžeme si to představit jako organizaci ve firmě. Firma má zaměstnance a ti mají svého nadřízeného. Nadřízení zaměstnanci mají opět svého nadřízeného a takto můžeme pokračovat až k CEO firmy, který… Čtěte více »

SQL # Tempová tabulka – Rozdíl mezi # a ## temp tabulkou

Tempová tabulka s hashtagem # nebo ## je dočasná tabulka, která je uložena v systémové databázi tempdb. Tabulka existuje pouze po dobu, po kterou je otevřena user session ID. Rozeznáváme 2 typy tempových tabulek: Lokální # tempová tabulka – je přístupná pouze v rámci dané session, tzn vidí ji pouze uživatel vykonávající skript Globální ## tempová… Čtěte více »

SQL CREATE TABLE- Jak na založení tabulky v databázi

Založení tabulky v databázi patří mezi základní dovednosti. Při založení pomocí příkazu sql CREATE TABLE tabulky definujeme: Název tabulky spolu s určením databáze a schématu Seznam sloupců spolu s datovými typy, constraints a definováním toho jestli může být sloupec prázdný (NULL vs NOT NULL) Tabulku můžeme založit v SQL dvěma základními způsoby: CREATE TABLE – v… Čtěte více »

SQL MERGE příkaz – INSERT, UPDATE, DELETE jedním vrzem

Příkaz SQL MERGE je pokročilý způsob jak porovnat 2 tabulky (Source a Destination). Porovnáváme záznamy a na základě shody (nebo neshody) prováníme UPDATE, INSERT nebo DELETE podle toho, jak porovnání záznamů v tabulkách dopadne. Využijeme zejména při synchronizaci dat mezi objekty/systémy nebo při ETL procesech v rámci datového skladu. Syntaxe: MERGE CilovaTabulka AS TARGET USING ZdrojovaTabulka AS… Čtěte více »

SQL DELETE table – mazání + rozdíl DELETE vs TRUNCATE

Rozeznáváme 2 typy příkazu, které slouží k mazání dat – SQL příkazy DELETE a TRUNCATE (viz článek SQL TRUNCATE). Každý je jiny a hodí se pro jinou situaci. Je dobré znát oba a podle potřeby si vybrat. Syntaxe (první varianta je optional): DELETE FROM dbo.Tabulka WHERE Podminka; nebo DELETE dbo.Tabulka WHERE Podminka; Na velké množství záznamů opatrně Pomocí… Čtěte více »

SQL TRUNCATE table – nepoužívej DELETE když nemusíš

T-SQL TRUNCATE statement vymaže všechny záznamy v tabulce. Na rozdíl od DELETE (viz. článek SQL DELETE) příkazu nemáte možnost filtrovat, které záznamy vymazat. Je to všechno nebo nic. Truncate je ale za to výrazně rychlejší oproti DELETE díky tomu, že zapisuje daleko méně do transakčního logu. Syntaxe T-SQL Truncate TRUNCATE TABLE dbo.Tabulka; nebo TRUNCATE dbo.Tabulka; První varianta… Čtěte více »