SQL Server

Vytvoření view s daty z uložené procedury

Můžeme vytvořit view, ve kterém přímo zavoláme uloženou proceduru a vrátíme z ní data jako sloupce view? Ano, je to možné s pomocí funkce OPENROWSET, jak ukazuje příklad níže. Nicméně, opravdu věřím, že se s podobnou programátorskou kreativitou nesetkám v produkčním kódu:)

Read more
SQL Server

Jazykové nastavení připojení

Pro každé připojení (session) můžeme nastavit jejích výchozí jazyk a toto nastavení následně určuje některé charakteristiky daného připojení, např. v jakém jazyce se budou zobrazovat systémové zprávy nebo různé formáty data, dny v týdnu a podobně. Než se pustíme do změny jazyka připojení, podívejme se,  jak můžeme zjistit aktuální nastavení:…
SQL Server

SET DATEFORMAT

Stává se poměrně často, že potřebujeme převést datum uložený jako textový řetězec na některý z datových typů určených přímo pro ukládání data a času (např. datetime, datetime2, date, etc.). Jak ale zajistíme, aby SQL Server správně rozuměl textovému řetězci a poznal zejména to, v jakém pořadí jsou v něm uloženy…
SQL Server

Jednoduché testování výkonu dotazu

Při ladění dotazu v SQL Serveru máme mnoho pokročilých možností, nicméně v jednoduchosti je někdy síla. Pomocí jednoduchého triku si můžeme zobrazit základní informace a námi laděném dotazu a pravidelně tak ověřovat, zda jsme při jeho ladění úspěšní či nikoliv.
DBASQL Server

Ochrana databáze před smazáním

Občas se zkrátka a dobře nedá vždy zabránit tomu, že přijde seshora příkaz, aby ten a ten dostal admin práva na produkci. Jako správný paranoidní DBA to ale nenecháte jen tak a pojistíte si alespoň ten nejhorší možný scénář: že se vetřelec, ať už omylem nebo úmyslně, pokusí smazat jednu…
T-SQL

Převod seznamu hodnot s oddělovačem do tabulky pomocí XML

Klasický problém, který řešíme téměř každý den je, jak si převést seznam hodnot oddělených čárkou nebo jiným znakem z textového řetězce do tabulkového formátu, abychom s daty mohli dále pracovat. Jednou z možností je využití schopností T-SQL jazyka pro práci s XML daty. Náš testovací řetězec si jednoduše pomocí REPLACE()…

Read more
T-SQL

Výpis chyb z CATCH bloku

Při psaní složitějších rutin v T-SQL a zejména při zanořování uložených procedur a dalších pokročilých scénářích je určitě na místě předejít nekontrolovaným chybám využitím konstrukce TRY & CATCH. Pokud nějaká chyba přeci jen nastane a zachytíme ji v CATCH bloku, potřebujeme vědět, o jakou chybu se jedná. Pokud nepošleme chybu…
T-SQL

OUTPUT

OUTPUT klauzule přišla do SQL Serveru již v edici 2008, ale stále je to výrazně nedoceněná funkcionalita a spousta vývojářů raději nejprve vloží data do tabulky a pak se teprve pomocí WHERE snaží přesvědčit, že se vše povedlo. Proto jsem pro Vás připravil krátký přehled všech vychytávek, které s OUTPUT…
SQL Server

Extracting data from XML

Getting data from XML is much easier with native support of XML in SQL Server. But it still requires solid knowledge of XML specific things like XPATH or XQUERY. The goal of this article is to collect some useful examples of how to extract values from XML and save time…

Read more