LINUXSOFT.cz Přeskoč levou lištu

ARCHIV



   

> MySQL (10) - tvorba databáze. Základy DDL

Konec teorie. Dnes vytvoříme v našem seriálu první databázi.

5.4.2005 15:00 | Petr Zajíc | Články autora | přečteno 61227×

Teorie o datových typech již bylo dost na to, abychom se dnes pustili do něčeho praktičtějšího. V tomto díle seriálu se tedy zamyslíme nad příkazy jazyka pro definici databázových objektů (DDL) a hned si nějaké vytvoříme.

Rychlé připojení k MySQL

Protože se chceme připojit k MySQL nějakým jednotným způsobem, použijeme řádkového klienta. Tomu bude ještě věnován celý díl seriálu, takže dnes jen to nejpodstatnější. Abyste se mohli úspěšně připojit k MySQL, budete potřebovat:

  • vědět, že řádkový klient MySql se spouští příkazem mysql (narozdíl od serveru, jež startuje příkaz mysqld)
  • vědět, jaký je název hostitele serveru, a znát svoje uživatelské jméno a heslo pro přístup
  • vědět, že pokud se chcete připojit k nějaké vzdálené databázi, lze zadat programu mysql údaje pomocí přepínačů -h, -u a -p (hostitel, uživatel, heslo)

Nějakým způsobem byste tedy měli být schopni se přihlásit spuštěním příkazu mysql; objevit by se mělo něco ve smyslu:

mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 17 to server version: 4.1.10a-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Program mysql teď čeká na zadání uživatele; pro nás je ještě důležité vědět, že jednotlivé příkazy se v programu mysql oddělují středníkem (;). Takže, vzhůru do světa DDL.

Založení nové databáze

První příkaz, který se naučíme, je příkaz pro tvorbu databáze. (Možná bude pro někoho užitečné podívat se do dílu o terminologii). Když se připojíte k databázovému serveru, mohou totiž nastat v zásadě tři situace:

  • Máte povolení pracovat s databází, ale musíte si ji nejprve vytvořit
  • Máte povolení pracovat s právě jednou databází, a již ji máte vytvořenu (typické u webhostingů)
  • Jste administrátor nebo se jedná o instalaci na vývojářský stroj - a pak si většinou můžete vytvořit databází, kolik chcete.

Novou databázi vytvoříte pomocí příkazu CREATE DATABASE. Viz příklad níže:

create database test;

V názvu databáze mysql nerozlišuje mezi malými a velkými písmeny, POKUD BEŽÍ SERVER na WINDOWS. Jestliže poběží na Linuxu, bude na tom záležet a databáze Test bude moci existovat vedle databáze test. Zapamatujete si to, když si uvědomíte, že každá databáze je v MySQL reprezentována adresářem. Řídící příkazy naproti tomu mohou být na všech systémech libovolnou kombinací malých a velkých písmen.

Ponz.: Kromě toho, že v Linuxu jdou vytvořit databáze, lišící se pouze velikostí písmen v názvech, byste ještě měli vědět, že se to moc nepoužívá. Například hodně vývojářů dává přednost tomu, pojmenovávat všechny objekty malými písmeny.

Jestliže právě zakládaná databáze již existuje, příkaz selže:

mysql> create database test;
ERROR 1007 (HY000): Can't create database 'test'; database exists

Tomu však lze zabránit použitím klauzule IF NOT EXISTS, jak vidíte níže.

create database if not exists test;

MySQL používá rozšíření IF NOT EXISTS k potlačení chybových hlášení celkem často. Není to standardní, ale dá se na to zvyknout. Další věc, kterou byste měli vědět je ta, že příkaz CREATE DATABASE může volitelně přijímat pokyn týkající se znakové sady a způsobu řazení, které se v nově vytvořené databázi budou uplatňovat:

create database latin character set latin2 collate latin2_czech_cs;

Názvy znakových sad a způsobů řazení si samozřejmě nemůžete vymyslet, musíte je převzít z těch, které MySQL podporuje.

Jak poznáte, že nová databáze byla skutečně založena? MySQL má příkaz:

show databases;

který vám všechny databáze na daném serveru vypíše. Konečně, pokud se budete chtít k dané databázi na serveru připojit, slouží k tomu syntaxe:

use test;

A ještě malá poznámka: Řádkový klient mysql podporuje zadání více příkazů najednou, takže následující systaxe je platná:

create database priklad; use priklad;[enter]

Zrušení databáze

Stejně, jako lze databázi založit, lze ji rovněž zrušit. Slouží k tomu příkaz DROP DATABASE:

drop database [if exists] test;

Jak ovšem nejspíš tušíte, zruší to nejen databázi samotnou, ale rovněž všechny tabulky a všechna data v ní. Buďte proto při používání tohoto příkazu maximálně opatrní - zejména pokud si nejste jisti, že mažete to, co potřebujete. Kromě obnovy z nějakých existujících záloh totiž není způsob, jak omylem odstraněnou databázi získat zpět.

Příště si v seriálu ukážeme na to, jak se dají v nově vzniklé databázi vytvářet tabulky.

Verze pro tisk

pridej.cz

 

DISKUZE

Nejsou žádné diskuzní příspěvky u dané položky.



Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

28.11.2018 23:56 /František Kučera
Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1

12.11.2018 21:28 /Redakce Linuxsoft.cz
22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář

6.11.2018 2:04 /František Kučera
Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

4.10.2018 21:30 /Ondřej Čečák
LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář

18.9.2018 23:30 /František Kučera
Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

9.9.2018 14:15 /Redakce Linuxsoft.cz
20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business. Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář

12.8.2018 16:58 /František Kučera
Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář

16.7.2018 1:05 /František Kučera
Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

31.7.2023 14:13 / Linda Graham
iPhone Services

30.11.2022 9:32 / Kyle McDermott
Hosting download unavailable

13.12.2018 10:57 / Jan Mareš
Re: zavináč

2.12.2018 23:56 / František Kučera
Sraz

5.10.2018 17:12 / Jakub Kuljovsky
Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2024) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze