MySQL ÚVOD DO JAZYKA SQL

Slides:



Advertisements
Podobné prezentace
PLAYBOY Kalendar 2007.
Advertisements

PHP aplikace pro komunikaci s MySQL
Základní obeznámení s jazykem SQL
Základy jazyka SQL Jan Tichava
SQL: DDL v ORACLE CREATE TABLE jméno_tabulky (atribut datový_typ [DEFAULT][attribut_constraint] [, atribut datový_typ [DEFAULT] [attribut_constraint]],...
Aplikační a programové vybavení
Jazyk SQL Ing. Zdena DOBEŠOVÁ. SQL Structured Query Language 1974 SEQUEL (Structured English Query Language) neprocedurální relační dotazovací jazyk norma.
LOV, Listbox, Poplist a Combobox v Oracle Forms LOV – seznam hodnot, které se zobrazí po stisku klávesy Enter v textovém poli. LOV – seznam hodnot, které.
Fakulta elektrotechniky a informatiky
Cvičení 03 SQL Select Ing. Pavel Bednář
Informační systémy Realizace uložených procedur a spouští, jejich praktické využití.
Další dotazy SQL Structured Query Language. Některé SQL příkazy mohou mít v sobě obsaženy další kompletní příkazy SELECT. Využijeme je tam, kde potřebujeme.
Základní obeznámení s jazykem SQL
Informatika pro ekonomy II přednáška 11
Databázové systémy 1 Cvičení č. 2 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Databázové systémy 1 Cvičení č. 3 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
1 BUMI Úvod do medicínské informatiky Počítačové cvičení č. 3 Ing. Vratislav Čmiel.
Temporální databáze a TSQL
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
SQL Lukáš Masopust Historie  Předchůdcem databází byly papírové kartotéky  děrný štítek  1959 konference  1960 – vytvořen jazyk COBOL.
Násobíme . 4 = = . 4 = = . 4 = = . 2 = 9 .
Uživatelé, Role, Schémata
Radek Špinka Přepínače MSSQL výběr.
Vzdělávací materiál / DUMVY_32_INOVACE_02B14 Příkazový řádek: obsah souborů PŘÍKLADY AutorIng. Petr Haman Období vytvořeníLeden 2013 Ročník / věková kategorie3.
MODERNÍ A KONKURENCESCHOPNÁ ŠKOLA reg. č.: CZ.1.07/1.4.00/ Základní škola, Šlapanice, okres Brno-venkov, příspěvková organizace Masarykovo nám.
MySQL ÚVOD DO JAZYKA SQL
MySQL - Vytvoření nové tabulky  create table jméno_tabulky (jméno_položky typ_položky,... ) Přehled nejběžnějších datových typů Přehled nejběžnějších.
Dělení se zbytkem 6 MODERNÍ A KONKURENCESCHOPNÁ ŠKOLA
Dělení se zbytkem 5 MODERNÍ A KONKURENCESCHOPNÁ ŠKOLA
Databáze výhody a nevýhody Ing. Emilie Šeptáková
Zásady pozorování a vyjednávání Soustředění – zaznamenat (podívat se) – udržet (zobrazit) v povědomí – představit si – (opakovat, pokud se nezdaří /doma/)
Deklarace Radim Štefan. 2 Použité zkratky BP – Borland Pascal De – Delphi.
Školení správců II. Petr Pinkas RNDr. Vít Ochozka.
Databázové systémy teorie a návrh relačních databázových systémů část II.
Aplikační a programové vybavení
KIV/ZIS cvičení 6 Tomáš Potužák. Pokračování SQL Klauzule GROUP BY a dotazy nad více tabulkami Stáhnout soubor studenti_dotazy_sql.mdb.
Databázové systémy I Cvičení č. 6 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Databázové systémy Přednáška č. 6.
SQL PVA Jan Hora. SQL „graficky“ Grafický vs. pravý SQL SELECT ORDED BY WHERE.
Rauer Luboš Kopic Petr Blažek Tomáš. Structured Query Language - dotazovací jazyk -> pracuje s dotazy - neprocedurální jazyk - mocný, ale přitom jednoduchý.
Databázové systémy 2 Cvičení č. 6 Ing. Tomáš Váňa Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Číslo šablony: III/2 VY_32_INOVACE_P4_3.8 Tematická oblast: Aplikační software pro práci s informacemi II. Databáze – základy SQL Typ: DUM - kombinovaný.
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Architektury a techniky DS Cvičení č. 9 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Databázové systémy II Cvičení č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Aplikační a programové vybavení
Databázové systémy 2 Zkouška – 12:00. Příklad I - Funkce Vytvořte funkci ZK_TRP_TREND(P_ID_TRPASLIKA IN NUMBER, P_DATUM_OD IN VARCHAR2, P_DATUM_DO.
Informatika II PAA DOTAZOVACÍ JAZYKY
Databázové systémy 2 Zkouška – 8:00. Příklad I – Procedura – 5 bodů Vytvořte proceduru P_ZK2(p_table_name VARCHAR2, p_min_nuls NUMBER, p_drop.
Aplikační a programové vybavení
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B13 Autor Ing. Jiří Kalousek Období vytvoření březen.
Databázové systémy 2 Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice.
Základní obeznámení s jazykem SQL Databázové systémy.
Databázové Aplikace Slidy ke cvičení DBI026, část 3 KSI MFF UK Verze
Databázové systémy 2 Zkouška – 8:00. Příklad I - Funkce Vytvořte funkci ZK_DIFF_MIN_MAX (P_ZAM_ID NUMBER) RETURN VARCHAR2. Funkce může vracet.
SQL Další dotazy a pohledy Databázové systémy. Některé SQL příkazy mohou mít v sobě obsaženy další kompletní příkazy SELECT. Využijeme je tam, kde potřebujeme.
Základní obeznámení s jazykem SQL Databázové systémy.
Příkazy jazyka SQL ve VFP a na SQL Serveru
Databázové systémy I Cvičení č. 5 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
Datové typy MS Access (3). Projekt: CZ.1.07/1.5.00/ OAJL - inovace výuky Příjemce: Obchodní akademie, odborná škola a praktická škola pro tělesně.
Dotazovací jazyk SQL I.
Databázové systémy přednáška 2 – Datové typy
Databázové systémy a SQL
Databázové systémy a SQL
Šablona 32 VY_32_INOVACE_038.ICT.34
Databázové systémy a SQL
Přednáška 9 Triggery.
Databázové systémy a SQL
Přednáška 5 Úvod do SQL.
Databázové jazyky Jaroslav Pokorný FI BVŠP Bratislava
Transkript prezentace:

MySQL ÚVOD DO JAZYKA SQL (c) 1999. Tralvex Yeap. All Rights Reserved

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

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 DATABASE CREATE INDEX DROP VIEW CREATE TABLE DROP INDEX DROP INDEX ALTER TABLE CREATE VIEW CREATE SEQUENCE DROP TABLE ALTER VIEW ALTER SEQUENCE

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

DATABÁZE

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

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

ODSTRANĚNÍ DATABÁZE DROP DATABASE POKUS;

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

TABULKY

TVORBA DATABÁZOVÉ TABULKY CREATE TABLE [SCHEMA.] NÁZEV_TABULKY ( 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

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.

ČÍSELNÉ DATOVÉ TYPY 1 Název datového typu Interval Zabíraná paměť TINYINT - 128 až 127 1 bajt SMALLINT - 32768 až 32767 2 bajty MEDIUMINT - 8388608 až 8388607 3 bajty INT - 2147483648 až 2147483647 4 bajty INTEGER BIGINT - 9223372036854775808 až 9223372036854775807 8 bajtů FLOAT (M, D) Dle použitých hodnot DOUBLE (M, D) REAL (M, D) DECIMAL (M, D) Dle hodnoty M + 2 NUMERIC (M, D)

ČÍSELNÉ DATOVÉ TYPY 2 Název datového typu Interval TINYINT 0 až 255 SMALLINT 0 až 65535 MEDIUMINT 0 až 16777215. INT 0 až 4294967295 INTEGER BIGINT 0 až 18446744073709551615

X+1 bajt (při uložení max. znaků) TEXTOVÉ DATOVÉ TYPY Název datového typu Maximální velikost Zabíraná paměť CHAR (X) 255 bajtů X bajtů VARCHAR (X) X+1 bajt (při uložení max. znaků) TINYTEXT X+1 bajt TINYBLOB TEXT 65535 bajtů X+2 bajty BLOB MEDIUMTEXT 1,6 MB X+3 bajty MEDIUMBLOB LONGTEXT 4,2 GB X+4 bajty LONGBLOB

DATOVÉ TYPY DATUM A ČAS Název datového typu Formát DATETIME YYYY-MM-DD HH:MM:SS DATE YYYY-MM-DD TIMESTAMP proměnný TIME HH:MM:SS YEAR YYYY

TYPY TABULEK CREATE TABLE nazev_tabulky (nazev_sloupce datovy_typ,... ) TYPE=typ_tabulky; - MYISAM - standart MySQL od verze 3.23.0; 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

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)

RUŠENÍ TABULEK DROP TABLE studenti;

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

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

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;

ALTER TABLE knihovna DROP vydavatel; 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;

ALTER TABLE knihovna CHANGE kniha knihy VARCHAR(30) NOT NULL; 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;

ALTER TABLE knihovna MODIFY kniha VARCHAR(30) NOT NULL; 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;

ALTER TABLE knihovna RENAME knihovnicka; 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;

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

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

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

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);

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

UPDATE studenti SET bydliště=null; 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;

NAPLŇTE TABULKU DATY (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);

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

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 = ROVNOST WHERE (ROK = 1990) <> NEROVNOST WHERE (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

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

ZAJIŠŤUJE AUTOMATICKOU INKREMENTACI HODNOT. Ú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.

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.

LITERATURA http://mm.gene.cz/