Databázové systémy Cvičení 5.2

Podobné dokumenty
Databáze I. Přednáška 4

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

Návrh a tvorba WWW stránek 1/14. PHP a databáze

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

5. POČÍTAČOVÉ CVIČENÍ

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

Databázové systémy Cvičení 5.3

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS

Databáze I. Přednáška 7

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.

Úvod do databázových systémů

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D.

Databázové systémy. Cvičení 6: SQL

Měřící systém se vzdáleným přístupem. Databáze

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL

Jazyk SQL databáze SQLite. připravil ing. petr polách

Kapitola 6: Omezení integrity. Omezení domény

Inovace a zkvalitnění výuky prostřednictvím ICT. Základní seznámení s MySQL Ing. Kotásek Jaroslav

Databáze I. Přednáška 6

6. SQL složitější dotazy, QBE

Sada 1 - PHP. 14. Úvod do jazyka SQL

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Úvod do databázových systémů

Databázové systémy Cvičení 5

B0M33BDT Technologie pro velká data. Supercvičení SQL, Python, Linux

Základy informatiky. 08 Databázové systémy. Daniela Szturcová

Databáze I. 5. přednáška. Helena Palovská

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče.

Práva a role. Martin Polák. NDBI013 Administrace Oracle

Základní přehled SQL příkazů

Databázové systémy a SQL

DUM 12 téma: Příkazy pro tvorbu databáze

Konceptuální modelování a SQL

Databázové systémy II. KIV/DB2 LS 2007/2008. Zadání semestrální práce

Databázové systémy I

POSTUP PRO VYTVOŘENÍ STRUKTUR PRO UKLÁDÁNÍ RDF DAT V ORACLE

Informační systémy ve zdravotnictví. 6. cvičení

Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky. 9. června krovacek@students.zcu.cz

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata

Dotazování v relačním modelu a SQL

- sloupcové integritní omezení

Základy informatiky. 06 Databázové systémy. Kačmařík/Szturcová/Děrgel/Rapant

Transformace konceptuálního modelu na relační

Úvod do databázových systémů

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek

SQL - trigger, Databázové modelování

Internetová filmová databáze IFDB

8.2 Používání a tvorba databází

Datové a procesní modely. A zpět k PEPOvi

37. Indexování a optimalizace dotazů v relačních databázích, datové struktury, jejich výhody a nevýhody

Zabezpečení proti SQL injection

Zkouškový příklad 4IT218 Rezervační systém zážitkové agentury. Karel Kohout FIS VŠE

KIV/ZIS cvičení 5. Tomáš Potužák

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

Materiál ke cvičením - SQL

B Organizace databáze na fyzické úrovni u serveru Oracle

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4.

Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MySQL základní pojmy, motivace Ing. Kotásek Jaroslav

Zabezpečení proti SQL injection

Databázové systémy I

Databázové systémy trocha teorie

MySQL sežere vaše data

DBS Transformace konceptuálního schématu na

SQL v14. 4D Developer konference. 4D Developer conference 2015 Prague, CZ Celebrating 30 years

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat)

Databázové systémy. Doc.Ing.Miloš Koch,CSc.

A5M33IZS Informační a znalostní systémy. Relační databázová technologie

Text úlohy. Systémový katalog (DICTIONARY):

Oracle XML DB. Tomáš Nykodým

Relační databázový model. Vladimíra Zádová, KIN, EF, TUL- DBS

Vzorové příklady SQL. Tabulka: Kniha CREATE TABLE kniha (id INTEGER, název VARCHAR(50), PRIMARY KEY (id))

RELAČNÍ DATABÁZE ACCESS

17. července :51 z moravec@yahoo.com

Jazyk SQL slajdy k přednášce NDBI001

Relační databáze. V dnešní době existuje řada komerčních DBMS, nejznámější jsou:

SII - Informatika. 1. Atribut relace, jehož hodnota jednoznačně určuje prvek v jiné relaci, se nazývá:

Relace x vztah (relationship)

PL/SQL. Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd.

Microsoft Office. Excel vyhledávací funkce

Otázka č. 1 (bodů za otázku: 4)

Verzování a publikace dat na webu za pomoci PostgreSQL

PG 9.5 novinky ve vývoji aplikací

Kapitola 4: SQL. Základní struktura

Structured Query Language SQL

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Úvod do databázových systémů. Ing. Jan Šudřich

Základy relačních databází, jejich využití v programování webu

Optimalizace SQL dotazů

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

Informační systémy 2008/2009. Radim Farana. Obsah. Základní principy XML

Temporální databáze. Jan Kolárik Miroslav Macík

Návod k aplikaci SQL Tools v.2.3

Osnova je orientační pro FIT, u FEKTu se dá předpokládat, že budou zohledněny předchozí znalosti studentů, kde většina s databází nikdy přímo

Relační databázová technologie

Popis ovládání. Po přihlášení do aplikace se objeví navigátor. Navigátor je stromově seřazen a slouží pro přístup ke všem oknům celé aplikace.

Transkript:

Databázové systémy Cvičení 5.2 SQL jako jazyk pro definici dat Detaily zápisu integritních omezení tabulek

Integritní omezení tabulek kromě integritních omezení sloupců lze zadat integritní omezení jako omezení celé tabulky zadává se za definici sloupců některá omezení sloupců mohou být zapsaná i jako omezení tabulky

integritní omezení pro výši maximálního platu jako omezení sloupce CREATE TABLE ZAMESTNANEC (ID INTEGER PRIMARY KEY, RC VARCHAR(11) NOT NULL, JMENO VARCHAR(20), PRIJMENI VARCHAR(20) NOT NULL, PLAT INT CHECK (plat<50000), USERNAME VARCHAR(10) UNIQUE );

integritní omezení pro výši maximálního platu jako omezení tabulky CREATE TABLE ZAMESTNANEC (ID INTEGER PRIMARY KEY, RC VARCHAR(11) NOT NULL, JMENO PRIJMENI PLAT USERNAME VARCHAR(20), VARCHAR(20) NOT NULL, INT, VARCHAR(10) UNIQUE, CONSTRAINT max_plat CHECK (plat<50000) );

Integritní omezení tabulek integritní omezení tabulek se testuje na neprázdné tabulce při vkládání dat, mazání, změně dat problém: integritní omezení typu požadavek na neprázdnost tabulky se po výmazu posledního záznamu neotestuje po vytvoření tabulky při vzniku databáze je samozřejmě prázdná, první záznam, po založení databáze musí nějaká procedura vložit alespoň jeden záznam

Integritní omezení tabulek řešení: zadat omezení ve tvaru tvrzení (ASSERTION) až po vzniku tabulky a vložení prvního záznamu CREATE ASSERTION jeden_ctenar CHECK (SELECT COUNT(*) FROM CTENAR > 0);

Vytvoření vlastních domén v SQL lze definovat vlastní domény a specifikovat tak vlastní datový typ např. omezením rozsahu hodnot CREATE DOMAIN rok_20_stoleti AS NUMERIC CHECK (VALUE BETWEEN 1900 AND 1999); porovnávání a kontrola legitimity spojení se provádí na základních typech

Vytvoření schématu schéma databáze kolekce tabulek, indexů, pohledů, uživatelských práv pojmenované schéma umožní logické seskupení tabulek, lze mít tabulky se stejným názvem v různých schématech, odkazujeme se na ně pomocí tečkové notace

Vytvoření schématu CREATE SCHEMA název_schématu [AUTHORIZATION username] seznam objektů schématu username jméno uživatele, který je vlastníkem schématu

Vytvoření schématu CREATE SCHEMA knihovna CREATE TABLE ctenar ( ) CREATE TABLE kniha ( ) ; na tabulky se můžeme odkazovat knihovna.ctenar

Vytvoření schématu lze zadat také jen CREATE SCHEMA knihovna; všechny další příkazy (CREATE TABLE, ), které SŘBD zadáváme, se automaticky provádějí v rámci schématu knihovna

Vytvoření schématu lze zadat také jen CREATE SCHEMA knihovna; všechny další příkazy (CREATE TABLE, ), které SŘBD zadáváme, se automaticky provádějí v rámci schématu knihovna

Vytvoření schématu v různých SŘBD se definice databáze mohou lišit v MySQL existuje ekvivalentní příkaz CREATE DATABASE, který musíme zadat jako první před tvorbou tabulek Microsoft SQL Server zná oba příkazy: CREATE DATABASE, CREATE SCHEMA jedna databáze může obsahovat několik schémat

Vytvoření indexů indexy jsou záznamy o tabulkách umožňující rychlé vyhledávání realizovány B-stromy pro jednu tabulku může být definováno více indexů, i podle více sloupců praktická představa: provede se seřazení řádků tabulky dle přílušných kritérií v indexu a tato informace o pařadí se zapíše vlastní data v tabulce se nepřehazují

Vytvoření indexů CREATE [UNIQUE] INDEX jméno_indexu ON jméno_tabulky ( jméno_atrib_1 [uspořádání], jméno_atrib_2 [uspořádání], ) [CLUSTER]; jako CLUSTER může být definován pro tabulku pouze jeden index data jsou podle něj uspořádány v tabulce

Vytvoření indexů uspořádání: ASC: vzestupně (implicitní) DESC: sestupně UNIQUE unikátní index, tj. žádné dva řádky dle tohoto indexu nesmí mít stejné hodnoty sloupcu(ů) v tomto indexu

Vytvoření a zrušení indexů CREATE INDEX prijmjmdat ON CTENAR ( prijmeni, jmeno, dat_nar DESC ); vytvoří index pro seřazení dle příjmení, jména vzestupně a data narození sestupně (od nejmladších) zrušení indexů DROP INDEX prijmjmdat