Učíme se MySQL - příkazy
MySQL, v současné době asi nejrozšířenější databázový systém na webu. Jeho ovládání není vůbec složité. Provádí se pomocí jednoduchých příkazů. Pojďme si je ukázat. |
|
Všechny příkazy si budeme pro přehlednost ukazovat na testovací tabulce. Tabulka bude představovat seznam knížek jedné knihovny. Její struktura vypadá takto:
Příkazy pro výběrZákladní příkaz pro výběr je SELECT. Použije se v každém dotazu ve kterém získáváme údaje z databáze. Struktura příkazu SELECT [co chceme vybrat] FROM [z jaké tabulky] [doplňující příkazy] V každém sql dotazu je vždy na začátku slovo SELECT, za ním následuje sloupec nebo sloupce, které chceme zobrazit. Pokud chceme zobrazit všechny sloupce z tabulky a ne jenom některé stačí místo názvu sloupců vložit znak *. Tento způsob se moc nedoporučje, protože se snadno ztratí kontrola o tom se kterými sloupci zrovna pracujeme a se kterými ne. Další část dotazu je výběr tabulky, te které se budou čerpat data. To má na starosti příkat FROM a název tabulky. Tabulek může být i více. Jednotlivé tabulky se oddělují se čárkou. Jako poslední jsou nepovinné, doplňující příkazy, které ale většinou bývají nejsložitější částí dotazu. Tyto příkazy se dají použít i u jiných typů dotazů než pro výběr.
První z nich je příkaz WHERE, jeho úkol je zřejmý. Omezuje vybrané záznamy podle určitých podmínek. Podmínek může být nespočet. Nějaká hodnota se má rovnat druhé, musí být větší nebo menší atd. Podmínky se také dají spojovat pomocí znaků: && (AND) - a zároveň (musí být splněny všechny podmínky) a || (OR) - nebo (stačí když je splněna pouze 1 z podmínek). Dejme si ale pro lepší pochopení příklad ze života. Jsme v internetovém obchodě, nakupujeme dárky na Vánoce a nemáte zrovna moc peněz, omezíme si tedy nabídku zboží pouze na ty výrobky, na které máme peněz dost a ostatní ani nevidíme. Tak právě toto omezení dělá příkaz WHERE.
Další doplňující příkaz je ORDER. Má na starosti řazení sloupců podle určitých hodnot. Syntaxe je taková: ORDER BY [název sloupce podle kterého se budou data řadit] ASC/DESC. ASC = řazení od nejmenší hodnoty (vzestupně) DESC = řazení od největší hodnoty (sestupně)
Po příkazu ORDER většinou následuje LIMIT - obezení počtu zobrazených záznamů a to ve tvaru LIMIT [od jakého čísla se má počítat], [kolik se má zorazit záznamů], tento příkaz najde největší využití u stránkování
Poslední z dnes použitých doplňujících příkazů je GROUP. Má za úkol seskupovat záznamy se stejnou hodnotou. Syntaxe je stejná jako u příkazu ORDER. GROUP BY [sloupec ve kterém se budou seskupovat data].
Stručný přehled doplňujících příkazů
WHERE - omezení výběru podle hodnot určitých polí LIMIT - omezení počtu vybraných záznamů ;
ORDER BY - seřazení záznamů ; DESC (sestupně), ASC (vzestupně) GROUP BY - seskupení záznamů
Příklady
SELECT * FROM knihy
// Výběr všech záznamů z tabulky knihy.
SELECT autor,titul FROM knihy WHERE zanr='Detektivky'
// zobrazí autora a titul knih, které mají přiřazený žánr Detektivky
SELECT count(*) FROM knihy WHERE autor='Agata Christie'
// Zjištění počtu knih od Agaty Christie. Výstupem tohoto dotazu je pouze číslo, nikoli záznamy.
SELECT * FROM knihy ORDER BY id DESC LIMIT 10
// 10 nejnovějších knih
Ukládání & editaceUkládání do databáze obstarává příkaz INSERT . Syntaxe INSERT INTO [tabulka] ([výpis sloupců tabulky]) VALUES ([data, která se mají do db uložit]);
Výpis sloupců tabulky není povinný. Pokud ho ale vynecháme musíme zadat ukládaná data přesně v takovém pořadí, v jakém jsou sloupce v tabulce. Vše asi nejlíp pochopíte na následujících příkladech:
INSERT INTO uzivatele (jmeno,prijmeni) VALUES('Pepa', 'Novak');
// uloží do tabulky uzivatele jméno Pepa Novák
INSERT INTO knihy VALUES('', 'J.R.R. Tolkien','Pan prstenu','Dobrodruzne','');
//nová knížka v databázi knihovny. Jelikož jsme vynechali názvy sloupců, musíme za sloupce id a rezervovano dosadit prázdnou hodnotu ''
Editace záznamů
Editace se provádí příkazem UPDATE a to ve tvaru: UPDATE [tabulka] SET sloupec='hodnota' WHERE [podmínka] Sloupec se nemusí upravovat pouze jeden, může jich být i několik, stačí je od sebe oddělit čákrou.
UPDATE tabulka SET sloupec_1='hodnota_1', sloupec_2='hodnota_2', sloupec_3='hodnota_3'... WHERE podminka
Podmínka se nejčastěji určuje pomocí příkazu WHERE, který je podrobně popsán o pár řádek výš.
Mazání záznamůData z db vymažeme příkazem DELETE. Jedná se asi o nejjednodušší příkaz v MySQL. Jeho syntaxe je následující: DELETE FROM [tabulka] WHERE [podmínka] K tomuto příkazu vám důrazně doporučuji, abyste NIKDY NEZAPOMÍNALI NA PODMÍNKU WHERE. Pokud ji totiž vynecháte, dojde ke smazání VŠECH dat z tabulky a snadno tak můžete přijít o cenné informace.
Práce s tabulkami
Vytvoření databázeCREATE DATABASE [název_db] DEFAULT CHARACTER SET [jazyková sada] COLLATE [jazyková sada] Příkazy DEFAULT CHARACTER SET a COLLATE určují výchozí kódování databáze. Nejsou povinné. Příklad:
CREATE DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
// tabulka test; znaková sada uft8
Vytvoření tabulkyCREATE TABLE [název_tabulky] ( Příklad:
CREATE TABLE uzivatele(
// tabulka pro evidenci uživatelů. Pro zjednodušení bude tabulka obsahovat pouze 3 sloupce. ID uživatele, jméno a příjmení. id má datový typ INT - číslo. Auto_increment znamená, že s každým novým záznamem se id změtší o 1. Primary key zajišťuje, že nikdy nebudou dvě id stejná. . Varchar je datový typ pro text s variabilní délkou (nemá pevně daný počet znaků) o maximální délce 30 znaků. Znamená to, že text v daném sloupci může mít 0-30 znaků.
Oprava tabulek
Jakékoli změny tabulek se dělají pomocí příkazu ALTER.
ALTER TABLE uzivatele ADD adresa VARCHAR(100);
// přidání sloupce "adresa" do tabulky "uzivatele"
ALTER TABLE `uzivatele` CHANGE `adresa` `adress` VARCHAR(100)
// změní se sloupec s adresa na adress
ALTER TABLE `uzivatele` DROP `adress`
// smazání sloupce adress
Vyprázdnění & mazání tabulekPoslední věc, kterou si dnes ukážeme je vyprázdnění a smazání celé tabulky. Struktura příkazu je velmi jednoduchá.
TRUNCATE TABLE tabulka
// vyprázdnění tabulky
DROP TABLE tabulka
// smazání tabulky Upozornění: Tyto příkazy jsou nevratné, proto si při jakékoli práci s nimi dávejte dobrý pozor na to, jestli to, co se chystáte smazat opravdu už nepotřebujete. Pokud jednou smažete nebo vyprázdníte tabulku data již nejdou obnovit. ZávěrTo by bylo, k MySQL příkazům zatím vše. Samotřejmě příkazů existuje daleko více, než je zde uvedeno, ale z důvodu jednoduchosti a přehlednosti jsou zde uváděny pouze základní, nějčastěji používané příkazy. Doufám že s pomocí tohoto článku už MySQL nebude představovat žádný problém a že vás zaujme natolik, abyste se také pustili do tvorby svých vlastních webových aplikací založených na databázi MySQL. Kdybyste měli jakékoli dotazy nebo připomínky, piště prosím do komentářů.
|
||||||||||||||
| Statistiky | |||
Autor: .:|IK|:.Další články od tohoto autora >>> |
Přidáno: 2008-12-27 07:04:05 |
Přečteno: 1276x |
|
Hodnocení: 4/10 |
Hodnotit článek mohou pouze přihlášení uživatelé
|
Celkem hodnotilo 1 lidí
|
|
Komentářů: 1023 |
Číst/napsat komentář | ||
Odkaz na tento příspěvek
Citovat
fSFVxIlNctCnv 2010-09-05 03:30:17
| |
online physicians cialis =-OOO |
Odkaz na tento příspěvek
Citovat
voduzZztwZJMaFEd 03.09.2010 12:26:33
| |
viagra bbzug |
Odkaz na tento příspěvek
Citovat
DwUUnHwbMuKhy 03.09.2010 12:25:19
| |
cialis =-PPP |
Odkaz na tento příspěvek
Citovat
yQZhzesnKUUEOOIgx 03.09.2010 12:08:45
| |
viagra without a prescription izxal |
Odkaz na tento příspěvek
Citovat
RgdtEZvoIEGLtCprFO 03.09.2010 11:56:50
| |
car insurance =DD insurance auto auctions 600925 slots fge |
Odkaz na tento příspěvek
Citovat
UaWOopGpaJHrwJQ 03.09.2010 06:55:15
| |
cheap home insurance 58959 auto insurance quotes 8]] car insurance quotes =-] |
Odkaz na tento příspěvek
Citovat
VbijzIGJ 03.09.2010 04:49:06
| |
buy valium online cheap 16849 Prednisone 848676 phentermine 803632 levitra delivered :[[ cialis for sale 223 |
Odkaz na tento příspěvek
Citovat
HigvldlAixoi 03.09.2010 02:53:19
| |
buy propecia from usa sbo levitra buy 64429 generic viagra levitra and tadalafil =OOO cheap cialis sale online yaiq buy dreampharm from tramadol znqog |
Odkaz na tento příspěvek
Citovat
IblHSQniyWSZt 03.09.2010 02:36:04
| |
propecia %-]] Accutane :] cialis aku Phentermine =-( |
Odkaz na tento příspěvek
Citovat
QkgLJXQBuLEw 03.09.2010 02:18:15
| |
buy valium iv online 814 prednisone online rpjwu phentermine hoodia =-OO levitra bavjfk |
Číst komentáře (1023)
Vytisknout
(4/10)
MySQL, v současné době asi nejrozšířenější databázový systém na webu. Jeho ovládání není vůbec složité. Provádí se pomocí jednoduchých příkazů. Pojďme si je ukázat.
Autor: .:|IK|:.
Přidáno: 2008-12-27 07:04:05
Hodnocení: 4/10
Celkem hodnotilo 1 lidí
Komentářů: 1023
Kontakt
Změnit vzhled
RSS výstup
Nastavit jako domovskou stránku