Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

MySQL ÚVOD DO JAZYKA SQL. 2 PŘÍKAZY JAZYKA SQL JAZYK SQL LZE ROZDĚLIT NA DVĚ ZÁKLADNÍ PODMNOŽINY : JAZYK DDL (DATA DEFINITION LANGUAGE) SYNTAXE TVORBY.

Podobné prezentace


Prezentace na téma: "MySQL ÚVOD DO JAZYKA SQL. 2 PŘÍKAZY JAZYKA SQL JAZYK SQL LZE ROZDĚLIT NA DVĚ ZÁKLADNÍ PODMNOŽINY : JAZYK DDL (DATA DEFINITION LANGUAGE) SYNTAXE TVORBY."— Transkript prezentace:

1 MySQL ÚVOD DO JAZYKA SQL

2 2 PŘÍKAZY JAZYKA SQL JAZYK SQL LZE ROZDĚLIT NA DVĚ ZÁKLADNÍ PODMNOŽINY : JAZYK DDL (DATA DEFINITION LANGUAGE) SYNTAXE TVORBY TABULEK JAZYK DML (DATA MANIPULATION LANGUAGE) SYNTAXE MANIPULACE S DATY

3 3 PŘÍKAZY Z PODMNOŽINY DDL PŘÍKAZY Z PODMNOŽINY DDL UMOŽŇUJÍ DEFINICI DATOVÝCH STRUKTUR A TVORBU OBJEKTŮ, JAKO JSOU TABULKY, SESTAVY, INDEXY APOD. CREATE DATABASECREATE INDEX DROP VIEW CREATE TABLEDROP INDEX DROP INDEX ALTER TABLECREATE VIEW CREATE SEQUENCE DROP TABLEALTER VIEW ALTER SEQUENCE

4 4 PŘÍKAZY Z PODMNOŽINY DML PŘÍKAZY Z PODMNOŽINY DDL UMOŽŇUJÍ MANIPULACI S DATY, TJ. VÝBĚR A VKLÁDÁNÍ DAT A JEJICH AKTUALIZACI, MAZÁNÍ ZÁZNAMŮ A PŘÍKAZ SELECT PRO VÝBĚR DAT. TATO PODMNOŽINA OBSAHUJE ČTYŘI HLAVNÍ PŘÍKAZY : SELECT INSERT UPDATE DELETE

5 5 DATABÁZE

6 6 VÝPIS VŠECH DOSTUPNÝCH DATABÁZÍ SHOW DATABASES;

7 7 VYTVOŘENÍ NOVÉ DATABÁZE CREATE DATABASE POKUS;

8 8 ODSTRANĚNÍ DATABÁZE DROP DATABASE POKUS;

9 9 PRÁCE S DATABÁZÍ NASTAVENÍ AKTIVNÍ DATABÁZE USE POKUS;

10 10 TABULKY

11 11 TVORBA DATABÁZOVÉ TABULKY CREATE TABLE [SCHEMA.] NÁZEV_TABULKY ( NÁZEV_SLOUPCE DATOVÝ_TYP [DEFAULT VÝRAZ] …… NÁZEV_SLOUPCE DATOVÝ_TYP [DEFAULT VÝRAZ] ) NEPOVINNÉ ČÁSTI JSOU V HRANATÝCH ZÁVORKÁCH VOLBA DEFAULT SPECIFIKUJE IMPLICITNÍ HODNOTU, KTERÁ SE UPLATNÍ PŘI VKLÁDÁNÍ NOVÉHO ŘÁDKU V SITUACI, KDY NEBUDE PRO DOTYČNÝ SLOUPEC ZADÁNA ŽÁDNÁ KONKRÉTNÍ HODNOTA

12 12 PŘÍKLAD TVORBY TABULKY CREATE TABLE CISLA (ID INT) V ZÁVORKÁCH NALEZNETE SEZNAM NADEFINOVANÝCH POLÍ ( S PŘIDĚLENÝM DATOVÝM TYPEM), KTERÉ JSOU OD SEBE ODDĚLENY ČÁRKAMI. CELÝ PŘÍKAZ SE ODDĚLUJE STŘEDNÍKEM. NAPŘ. CREATE TABLE DALŠÍ (ID INT, POPIS TEXT) COMMENT= TOTO JE KOMENTÁŘ K TABULCE.

13 13 ČÍSELNÉ DATOVÉ TYPY 1 Název datového typuIntervalZabíraná paměť TINYINT- 128 až 1271 bajt SMALLINT až bajty MEDIUMINT až bajty INT až bajty INTEGER až bajty BIGINT až bajtů FLOAT (M, D)Dle použitých hodnot4 bajty DOUBLE (M, D)Dle použitých hodnot8 bajtů REAL (M, D)Dle použitých hodnot8 bajtů DECIMAL (M, D)Dle použitých hodnotDle hodnoty M + 2 NUMERIC (M, D)Dle použitých hodnotDle hodnoty M + 2

14 14 ČÍSELNÉ DATOVÉ TYPY 2 Název datového typuInterval TINYINT0 až 255 SMALLINT0 až MEDIUMINT0 až INT0 až INTEGER0 až BIGINT0 až

15 15 TEXTOVÉ DATOVÉ TYPY Název datového typuMaximální velikostZabíraná paměť CHAR (X)255 bajtůX bajtů VARCHAR (X)255 bajtůX+1 bajt (při uložení max. znaků) TINYTEXT255 bajtůX+1 bajt TINYBLOB255 bajtůX+1 bajt TEXT65535 bajtůX+2 bajty BLOB65535 bajtůX+2 bajty MEDIUMTEXT1,6 MBX+3 bajty MEDIUMBLOB1,6 MBX+3 bajty LONGTEXT4,2 GBX+4 bajty LONGBLOB4,2 GBX+4 bajty

16 16 DATOVÉ TYPY DATUM A ČAS Název datového typuFormát DATETIMEYYYY-MM-DD HH:MM:SS DATEYYYY-MM-DD TIMESTAMPproměnný TIMEHH:MM:SS YEARYYYY

17 17 CREATE TABLE nazev_tabulky (nazev_sloupce datovy_typ,... ) TYPE=typ_tabulky; - MYISAM - standart MySQL od verze ; soubory s tabulkami mají koncovku.myd (data) a.myi (indexy) - ISAM - standartní typ tabulky ve starších databázích; dnes nahrazen typem MYISAM - MERGE - formát vhodný pro spojení MYISAM tabulek se stejně nadefinovanými poli - HEAP - tabulka tohoto typu je uložena pouze v paměti (může být velmi rychlá), má ale řadu omezení - INNODB - uzamykání tabulky je vykonáváno na úrovni řádků; před použitím je nutná kompilace MySQL s podporou INNODB - BDB - typ tabulky podobný INNODB; zatím ve fázi testování - před nasazením jiného typu než MYISAM si prostudujte originální dokumentaci TYPY TABULEK

18 18 TVORBA DATABÁZOVÉ TABULKY - PŘÍKLAD CREATE TABLE studenti (id NUMBER(10,0) NOT NULL, jméno VARCHAR2(20) NOT NULL, příjmení VARCHAR2(20) NOT NULL, bydliště VARCHAR2(50), rodné_číslo VARCHAR2(10) NOT NULL UNIQUE, PRIMARY KEY(id)

19 19 RUŠENÍ TABULEK DROP TABLE studenti;

20 20 DESCRIBE nazev_tabulky; SHOW COLUMNS FROM nazev_tabulky; - příkaz nám zobrazí definici požadované tabulky (názvy + datové typy + modifikátory) VÝPIS POPISU TABULKY DESCRIBE studenti; SHOW COLUMNS FROM nazev_tabulky;

21 21 NOVÝ SLOUPEC ALTER TABLE knihovna ADD COLUMN cislo SMALLINT FIRST; ALTER TABLE knihovna ADD COLUMN vydavatel VARCHAR(10); ALTER TABLE knihovna ADD COLUMN zanr VARCHAR(10) AFTER kniha;

22 22 NOVÝ SLOUPEC ADD nazev_noveho_sloupce datovy_typ;.. ADD COLUMN nazev_noveho_sloupce datovy_typ; - příkaz přidá do tabulky nový sloupec - př.: ALTER TABLE knihovna ADD COLUMN vydavatel VARCHAR(10); - modifikátory:.. FIRST - přidá nový sloupec na začátek tabulky - př.: ALTER TABLE knihovna ADD COLUMN cislo SMALLINT FIRST;.. AFTER nazev_sloupce; - přidá nový sloupec za sloupec "nazev_sloupce" - př.: ALTER TABLE knihovna ADD COLUMN zanr VARCHAR(10) AFTER kniha;

23 23 SMAZÁNÍ SLOUPCE DROP nazev_odstranovaneho_sloupce;.. DROP COLUMN nazev_odstranovaneho_sloupce; - příkaz odebere požadovaný sloupec - př.: ALTER TABLE knihovna DROP vydavatel; ALTER TABLE knihovna DROP vydavatel;

24 24 ZMĚNA PARAMETRŮ CHANGE nazev_sloupce novy_nazev_sloupce nove_nastaveni; - změní datový typ a může sloupec i přejmenovat - př.: ALTER TABLE knihovna CHANGE kniha knihy VARCHAR(30) NOT NULL; ALTER TABLE knihovna CHANGE kniha knihy VARCHAR(30) NOT NULL;

25 25 MODIFIKACE PARAMETRŮ MODIFY nazev_sloupce nove_nastaveni; - u požadovaného sloupce změní datový typ - př.: ALTER TABLE knihovna MODIFY kniha VARCHAR(30) NOT NULL; ALTER TABLE knihovna MODIFY kniha VARCHAR(30) NOT NULL;

26 26 PŘEJMENOVÁNÍ TABULKY RENAME novy_nazev_tabulky; - příkaz přejmenuje požadovanou tabulku - př.: ALTER TABLE knihovna RENAME knihovnicka; ALTER TABLE knihovna RENAME knihovnicka;

27 27 INDEXY A KLÍČE V TABULKÁCH SHOW KEYS FROM nazev_tabulky; SHOW INDEX FROM nazev_tabulky; - vypíše podrobné informace o primárních klíčích a indexech v tabulce

28 28 ZAMYKÁNÍ TABULEK LOCK TABLES nazev_tabulky READ, nazev_tabulky WRITE; -uzamkne vyjmenované tabulky pro čtení (READ), nebo zápis (WRITE) - po uzamknutí mají právo čtení, nebo zápisu v tabulce pouze ty příkazy, které se nachází mezi LOCK... UNLOCK UNLOCK TABLES; -- odemčení všech zamčených tabulek BEGIN; dotaz1; dotaz2; dot...; COMMIT; - pouze u typu tabulky InnoDB - všechny dotazy se vykonají pouze za předpokladu, že se spojení MySQL nepřeruší až do vykonání COMMIT - pokud je spojení během dotazování přerušeno, neprovede se ani jeden dotaz mezi BEGIN a COMMIT SELECT co_nacist FROM odkud_nacist LOCK IN SHARE MODE; - pouze u typu tabulky InnoDB - dotaz počká až se dokončí právě probíhající dotazy a až potom načte záznam

29 29 PŘÍKLAD TVORBY TABULKY BONDOVKY CREATE TABLE BONDOVKY ( CISLO INT PRIMARY KEY, NAZEV VARCHAR (40), HEREC VARCHAR (10), ROK INT );

30 30 JAK NAPLNIT TABULKU DATY KE VKLÁDÁNÍ DAT DO TABULEK SLOUŽÍ PŘÍKAZ INSERT INTO název tabulky VALUES (hodnota_sloupce1 ) INSERT INTO bondovky VALUES (1, "Dr. No", "Connery", 1962);

31 31 MAZÁNÍ ZÁZNAMU DELETE FROM studenti; DELETE FROM studenti WHERE id=25; DELETE FROM studenti WHERE id=25 OR bydliště IS NULL;

32 32 ZMĚNA ZÁZNAMU UPDATE studenti SET bydliště=null; UPDATE studenti SET jméno='Pavel' WHERE id=25; UPDATE studenti SET bydliště='Lomec 26', jméno='Pavel' WHERE id=25 AND bydliště IS NOT NULL;

33 33 (1, "Dr. No", "Connery", 1962); (2, "From Russia With Love„, "Connery„, 1963); (3, "Goldfinger„, "Connery„, 1964); (4, "Thunderball„,"Connery", 1965); (5, „You Only Live Twice", "Connery", 1967); (6, "On Her Majesty's Secret Service", "Lazenby„, 1969); (7, "Diamonds Are Forever", "Connery", 1971); (8, "Live And Let Die", "Moore", 1973); (9, "The Man With The Golden Gun", "Moore", 1974); (10, "The Spy Who Loved Me„, "Moore„, 1977); 11, "Moonraker„, "Moore„, 1979); (12, "For Your Eyes Only", "Moore", 1981); (13, "Octopussy". "Moore", 1983); (14, "A View To A Kill„, "Moore". 1985); (15, "The Living Daylights", „Dalton", 1987); (16, "Licence To Kill". „Dalton", 1989); (17, "GoldenEye", "Brosnan„, 1995); (18, "Tomorrow Never Dies„, "Brosnan". 1997); (19, "The One World Is Not Enough", "Brosnan„, 1999); (20, „Die Another Day„, "Brosnan“, 2002); NAPLŇTE TABULKU DATY

34 34 VÝPIS ZÁZNAMŮ Z TABULKY PŘÍKLAD:_ SELECT HEREC FROM BONDOVKY SELECT * FROM BONDOVKY

35 35 VÝPIS ZÁZNAMŮ Z TABULKY SELECT – SLOUŽÍ K VÝBĚRU ZÁZNAMŮ FROM – SPECIFIKUJE MÍSTO KDE SE POŽADOVANÉ INFORMACE NACHÁZEJÍ WHERE – URČUJE PODMÍNKY = ROVNOSTWHERE (ROK = 1990) <> NEROVNOSTWHERE (ROK <> 1990) > VĚTŠÍWHERE (ROK>1990) < MENŠÍWHERE(ROK <1990) BETWEEN PATŘÍ DO INTERVALU (ROK BETWEEN 1990 AND 2000) NOT BETWEEN NEPATŘÍ DO INTERVALU

36 36 PŘÍKLAD SELECT * FROM BONDOVKY WHERE ROK >=1990;

37 37 ÚPRAVA TABULKY VYTVOŘTE NOVOU TABULKU BONDOVKY1 CREATE TABLE BONDOVKY ( CISLO INT AUTO_INCREMENT PRIMARY KEY, NAZEV VARCHAR (40), HEREC VARCHAR (10), ROK INT ); ZAJIŠŤUJE AUTOMATICKOU INKREMENTACI HODNOT.

38 38 JAK NAPLNIT TABULKU DATY KE VKLÁDÁNÍ DAT DO TABULEK SLOUŽÍ PŘÍKAZ INSERT INTO název tabulky (NÁZVY JEDNOTLIVÝCH SLOUPCŮ) VALUES (hodnota_sloupce1 ) Příklad JINÉ SYNTAXE: INSERT INTO BONDOVKY1 (NAZEV, HEREC, ROK) VALUES ( "Dr. No", "Connery", 1962); KDYBYCHOM PRO TENTO PŘÍPAD POUŽILI PŮVODNÍ SYNTAXI OHLÁSIL BY DBF SERVER CHYBU.

39 39 LITERATURA


Stáhnout ppt "MySQL ÚVOD DO JAZYKA SQL. 2 PŘÍKAZY JAZYKA SQL JAZYK SQL LZE ROZDĚLIT NA DVĚ ZÁKLADNÍ PODMNOŽINY : JAZYK DDL (DATA DEFINITION LANGUAGE) SYNTAXE TVORBY."

Podobné prezentace


Reklamy Google