Užitečné tipy

Transact-SQL - vytvoření databáze

Pin
Send
Share
Send
Send


Microsoft Visual Studio 2008 obsahuje databázový server Microsoft SQL Server 2005 Express Edition. Liší se od plně funkčního datového serveru pouze omezením velikosti databáze na 2 gigabajty, což umožňuje vývoj a testování databázových aplikací.

Při práci na vytváření databáze a tabulek použijeme Microsoft SQL Server Management Studio Express. Tento softwarový produkt je volně distribuován a je k dispozici ke stažení na internetu.

1.4.1. Definice struktury databáze

Vzhled okna programu Microsoft SQL Server Management Studio Express je znázorněn na Obr. 14.

Obr. 14. Vzhled okna Microsoft SQL Server Management Studio Express

Chcete-li vytvořit databázi, klepněte pravým tlačítkem myši na položku „Databáze“ a vyberte položku nabídky „Vytvořit databázi“. Okno pro vytvoření databáze je znázorněno na Obr. 15.

Obr. 15. Okno pro vytvoření databáze

Toto okno nastavuje název databáze, názvy a cesty k databázovým souborům, počáteční velikost souboru a v případě potřeby krok ke zvýšení velikosti databáze. Po kliknutí na tlačítko „OK“ se vytvořená databáze objeví v seznamu databází.

Obr. 16. Pohled na Management Studio s vytvořenou databází

Vytvořená databáze je prázdná, tj. Neobsahuje žádné tabulky. Dalším úkolem je proto vytvořit tabulky, jejichž struktura je podobná tabulkám z databáze aplikace Access. Při vytváření tabulek je třeba věnovat pozornost vztahu mezi typy přístupu a SQL Server uvedenými v tabulce 6.

Tabulka 6. Korespondence mezi datovými typy Microsoft Access a Microsoft SQL

Typ datMicrosoft přístup

Typ datMicrosoft SQL

Popis datového typuMicrosoftSQL

Text

nvarchar

Typ dat pro ukládání textu do 4000 znaků

Pole MEMO

ntext

Typ datového znaku Unicode až 1 073 741 823 znaků

Numerické

Numerické hodnoty (celé číslo) v rozsahu od -2 147 483 648 do +2 147 483 647

Datum / čas

smalldatetime

Datum a čas od 1. ledna 1900 do 6. června 2079 s přesností na jednu minutu

Hotovost

peníze

Peněžní datový typ, jehož hodnoty jsou v rozsahu

od -922 337 203 685 477,5808 do +922 337 203 685 477,5807, s přesností na deset tisícin

Počítadlo

Viz bod 3

Logické

Proměnná, která dokáže přijmout pouze dvě hodnoty - 0 nebo 1

Pole objektu OLE

obrázek

Proměnná pro uložení pole bytů od 0 do 2 147 483 647 bytů

Hyperlink

ntext

Viz bod 2

Průvodce vyhledáváním

nvarchar

Viz bod 1

Chcete-li vytvořit tabulky, vyberte položku „Vytvořit tabulku“ v místní nabídce větev „Tabulky“. Management Studio má následující podobu.

Obr. 17. Management Studio v režimu vytváření tabulek

Chcete-li určit vztahy mezi tabulkami, musíte určit primární klíče tabulek. Chcete-li to provést, vyberte položku „Nastavit primární klíč“ v kontextové nabídce odpovídajícího pole.

Obr. 18. Nastavení primárního klíče

Chcete-li vytvořit vztahy mezi tabulkami a databázovými schématy, musíte si vytvořit nový databázový diagram výběrem odpovídající položky v kontextové nabídce větve „Databázové diagramy“. Přidáním potřebných tabulek do diagramu v zobrazeném okně získáme následující pohled na Management Studio.

Obr. 19. Začátek vytváření databázového diagramu

Vytváření odkazů probíhá kombinací polí, která mají být propojena. Výsledkem je vzhled okna pro vytvoření vztahu.

Obr. 20. Vytvoření vztahu mezi databázovými tabulkami

Zvláštní pozornost má položka „INSERT and UPDATE Specification“, která definuje pravidla pro aktualizaci a mazání souvisejících dat v tabulkách.

Po vytvoření zbývajících tabulek a jejich vztahů bude datové schéma vypadat následovně.

Na rozdíl od schématu dat aplikace Microsoft Access nejsou zde řádky zobrazující výchozí vztahy graficky přichyceny k primárním a sekundárním polím. Když však kliknete na jakýkoli odkaz levým tlačítkem, na panelu vlastností se zobrazí informace o vybrané relaci.

Po dokončení práce s datovým schématem ji uložíme. Všimněte si, že v SQL Management Studio, na rozdíl od aplikace Access, lze pro jednu databázi vytvořit několik grafů.

Tato funkce je užitečná pro databáze s velmi velkým počtem tabulek, protože jeden společný diagram by byl příliš načten.

Obr. 21. Databázové schéma BDTur_firmSQL

Obr. 22. Několik diagramů pro jednu databázi

© 2019 Science Library

Kopírování informací ze stránky je povoleno pouze s odkazem na tento web

Vytvořte snímek databáze

Kromě vytvoření nové databáze lze pomocí příkazu CREATE DATABASE pořídit snímek existující databáze (zdrojová databáze). Snímek databáze je kopie původní databáze, která byla konzistentní z hlediska dokončených transakcí v době, kdy byl snímek vytvořen. Následuje syntaxe pro vytvoření snímku databáze:

Chcete-li tedy vytvořit snímek databáze, musíte do příkazu CREATE DATABASE vložit klauzuli AS SNAPSHOT OF.. Následující příklad ilustruje vytvoření snímku databáze SampleDb a jeho uložení do složky D: temp. (Než spustíte tento příklad, musíte vytvořit tento adresář.)

Snímek existující databáze je kopií zdrojové databáze pouze pro čtení, která odráží stav databáze v době kopírování. (Tímto způsobem můžete vytvořit více snímků existující databáze.) Soubor snímku (ve výše uvedeném příkladu je D: temp snapshot_DB.mdf) obsahuje pouze upravená data ze zdrojové databáze. Proto je v kódu pro vytvoření snímku nutné uvést logický název každého datového souboru zdrojové databáze a odpovídající fyzické názvy.

Protože snímek obsahuje pouze změněná data, je pro každý snímek vyžadován pouze malý zlomek místa na disku potřebného pro odpovídající zdrojovou databázi.

Snímky databáze lze vytvořit pouze na discích se systémem souborů NTFS (New Technology File System). pouze tento systém souborů podporuje technologii řídkých souborů používanou k ukládání snímků.

Snímky databáze se obvykle používají jako mechanismus, který zabraňuje poškození dat.

Připojení a odpojení databází

Všechna databázová data lze odpojit a znovu připojit ke stejnému nebo jinému databázovému serveru. Tato funkce se používá při přesunu databáze.

Systémová procedura sp_detach_db se používá k odpojení databáze od databázového serveru.. (Odpojitelná databáze musí být v režimu pro jednoho uživatele.)

Chcete-li připojit databázi, použijte příkaz CREATE DATABASE s klauzulí FOR ATTACH. Pro připojenou databázi musí být k dispozici všechny požadované soubory. Pokud má jakýkoli datový soubor jinou cestu než původní, musí být pro tento soubor zadána aktuální cesta.

Co je potřeba k vytvoření databáze na serveru Microsoft SQL Server?

V této části uvedu některé kroky k vytvoření databáze na serveru Microsoft SQL Server, tj. to je přesně to, co potřebujete vědět a co musíte mít, abyste mohli vytvořit databázi:

  1. Musíte mít nainstalován Microsoft SQL Server. Bezplatné vydání Microsoft SQL Server Express je ideální pro školení. Pokud jste ještě nenainstalovali SQL Server, zde je podrobná instrukce k videu, kde ukážu, jak nainstalovat Microsoft SQL Server 2017 ve verzi Express,
  2. Musíte mít nainstalován SQL Server Management Studio (SSMS). SSMS je hlavním nástrojem, pomocí kterého je vývoj databází implementován v Microsoft SQL Server. Toto prostředí je zdarma, pokud ho nemáte, pak ve výše uvedené video instrukci také ukážu instalaci tohoto prostředí,
  3. Navrhněte databázi. Před vytvořením databáze je třeba ji navrhnout, tzn. definovat všechny entity, které budete ukládat, určit vlastnosti, které budou mít, a také určit všechna pravidla a omezení, která se vztahují na data během jejich přidávání, ukládání a změn. Jinými slovy, musíte určit strukturu databáze, které tabulky budou obsahovat, jaké vztahy budou mezi tabulkami, které sloupce bude každá z tabulek obsahovat. V našem případě, tj. během tréninku bude tato fáze spíše formální, protože začátečník nebude schopen databázi správně navrhnout. Začátečník by však měl vědět, že je nemožné pokračovat ve vytváření databáze bez předběžného návrhu, protože je velmi pravděpodobné, že je nemožné implementovat databázi bez jasného představy o tom, jak by tato databáze měla vypadat nakonec.
  4. Vytvořte prázdnou databázi. Existují dva způsoby, jak vytvořit databázi v SQL Server Management Studio: první pomocí grafického rozhraní, druhý pomocí jazyka T-SQL,
  5. Vytvořte tabulky v databázi. V této fázi již budete mít databázi, ale bude prázdná, protože v ní zatím nejsou žádné tabulky. Nyní budete muset vytvořit tabulky a odpovídající omezení,
  6. Naplňte databázi daty. V databázi již jsou tabulky, ale jsou prázdné, takže nyní můžete přejít k přidávání dat do tabulek,
  7. Vytvořte další databázové objekty. Již máte databázi a tabulky a data, takže můžete vyvinout další databázové objekty, jako jsou: pohledy, funkce, procedury, spouštěče, pomocí kterých jsou implementována obchodní pravidla a aplikační logika.

Zde je obecný plán pro vytvoření databáze, kterou byste měli znát před tím, než začnete představovat Microsoft SQL Server a jazyk T-SQL.

V tomto článku se budeme zabývat fází 4, jedná se o vytvoření prázdné databáze, budou se uvažovat oba způsoby vytvoření databáze: pomocí grafického rozhraní a pomocí jazyka T-SQL. První tři kroky, které jste již měli udělat, tj. jste již nainstalovali SQL Server a Management Studio a přibližnou strukturu databáze, kterou chcete implementovat, jak jsem řekl, můžete tento bod přeskočit ve fázi školení a v následujících materiálech ukážu, jak vytvořit tabulky v Microsoft SQL Server i když s jednoduchou, ale více či méně skutečnou strukturou.

Vytvoření databáze v SQL Server Management Studio

První věc, kterou musíte udělat, je spustit SQL Server Management Studio a připojit se k serveru SQL.

Poté v prohlížeči objektů klikněte na kontejner "Databáze" klikněte pravým tlačítkem a vyberte "Vytvořit databázi".

V důsledku toho se otevře okno "Vytvoření databáze". Zde musíte vyplnit pouze pole "Název databáze", další parametry jsou konfigurovány podle potřeby. Po zadání názvu databáze klikněte na „OK“.

Pokud na serveru zatím není žádná databáze se stejným názvem, bude vytvořena, okamžitě se objeví v prohlížeči objektů.

Jak vidíte, databáze byla vytvořena a není na ní nic složitého.

Vytvoření databáze T-SQL (CREATE DATABASE)

Proces vytváření databáze v T-SQL je pravděpodobně ještě jednodušší, protože za účelem vytvoření databáze s výchozím nastavením (jak jsme udělali trochu výš), musíte v editoru dotazů SQL napsat pouze tři slova - příkaz CREATE DATABASE a název databáze.

Nejprve otevřete editor dotazů SQL, k tomu klikněte na tlačítko Vytvořit požadavek na panelu nástrojů.

Poté zadáme následující pokyn a spustíme jej k provedení tlačítka "Spustit".

Kde CREATE je příkaz T-SQL pro vytváření objektů na serveru SQL, pomocí příkazu DATABASE označujeme, že chceme vytvořit databázi, a TestDB je název nové databáze.

Samozřejmě v této fázi mnoho lidí nezná jazyk Microsoft SQL Server ani jazyk T-SQL, mnozí pravděpodobně pouze vytvoří databázi, aby se začali seznamovat s tímto DBMS a začali se učit jazyk T-SQL. Abychom vám to usnadnili, doporučujeme vám přečíst si tuto knihu Cesta programátora T-SQL - Toto je výukový program o jazyce Transact-SQL pro začátečníky, ve kterém podrobně hovořím o základních konstrukcích i pokročilých konstrukcích jazyka T-SQL a soustavně přecházím z jednoduchých na složité.

Pomocí instrukce CREATE DATABASE můžete nastavit absolutně všechny parametry, které byly zobrazeny v grafickém rozhraní SSMS. Pokud bychom například výše uvedený příkaz nahradili následujícím, vytvořili bychom databázi v adresáři DataBases na jednotce D.

Odebrání databáze v Microsoft SQL Server

V případě potřeby můžete databázi vymazat. Ve skutečnosti to bude samozřejmě nutné jen zřídka, ale v procesu učení, možná často. To lze také provést pomocí grafického rozhraní a pomocí jazyka T-SQL.

V případě grafického rozhraní v prohlížeči objektů klepněte pravým tlačítkem myši na databázi, kterou potřebujete, a vyberte Odstranit.

Poznámka!Databázi je možné smazat, pouze pokud k ní nejsou žádná připojení, tj. nikdo v tom nepracuje, i váš vlastní kontext připojení v SSMS musí být nakonfigurován na jinou databázi (například pomocí příkazu USE). Proto před odstraněním musíte nejprve požádat všechny, aby ukončili relace s databází, nebo v případě testovacích databází vynutit uzavření všech připojení.

V okně „Smazat objekt“ klikněte na „OK“. Chcete-li vynutit uzavření existujících připojení k databázi, můžete zkontrolovat Zavřete stávající připojení.

V případě T-SQL, chcete-li odstranit databázi, stačí napsat následující příkaz (v DB by také neměl fungovat nikdo).

Kde DROP DATABASE je instrukce k odstranění databáze, TestDB je název databáze. Jinými slovy, pomocí příkazu DROP se odstraní objekty na serveru SQL.

Pin
Send
Share
Send
Send