Užití SQL ve 4D v14-15

Rozměr: px
Začít zobrazení ze stránky:

Download "Užití SQL ve 4D v14-15"

Transkript

1 Užití ve v14-15 Úvod Definice dat a přístup k datům jsou kritické momenty v řízení databází. Uživatelé potřebují schopnost definovat strukturu pro ukládání dat. Uživatelé také chtějí možnost přistupovat k datům uloženým v databázi za účelem práce s daty, a dotazy na data. umožňuje uživatelům všechny úrovně přístupu. také podporuje využívání ; populárního programovacího jazyka pro přístup k databázím. Tato technická poznámka bude dá a vedle sebe a dotýká se použití obou při přístupu k databázi. Dále se bude způsobem myslet tradiční přístup vývoje a užití databáze a doplňiújící způsob na zaákladě standardů, i když ten je již dnes také. Rozhodující položkou pro každou databázi je způsob, jak uživatelé definují datové struktury, a způsob, jak přistupují k datům uloženým v databázi. je relační databázový systém a IDE, který umožňuje uživatelům obě funkce. nabízí jednoduché grafické rozhraní pro uživatele k vytvoření jejich struktury. Uživatelé mohou vytvářet formuláře k úpravě svých osobních údajů v přátelským a intuitivním způsobem. Dále pak, poskytuje nativní jazyk dotazů na data a provádění mnoha dalších funkcí. Kromě mateřského jazyka, podporuje použití. je standardní jazyk pro relační databázový systém, který umožňuje uživatelům provádět některé databázové úlohy, ktzeré povoluje. a a jsou dvě různé možnosti, které vývojář / uživatel databáze může použít při vytváření a správě databáze. Je několik důležitých základních operací, jež zahrnují definování struktury databáze, manipulaci s daty v databázi, a vytváření vztahů mezi tabulkami a polí. Při provádění některých operací databáze, poskytuje uživateli s možnosti provedení operací buď programově (jazykem); nebo prostřednictvím grafického uživatelského rozhraní. Při provádění stejné operace v, musí vždy být použity standardní příkazy jazyka. Standardní příkazy jako Select, Create, Delete, Drop, a Update lze použít k provedení mnoha důležitých operací databáze. Definice dat (struktury) a manipulace s daty Mnoho z databázových operací může být rozděleno do dvou základních kategorií. Kategorie operací jsou rozděleny podle toho, co operace dělá a druhu úkolů, které vykonává. Tyto dvě kategorie jsou definice dat (struktury) a manipulace s daty. Definice dat (struktury) Definice dat zahrnuje definování toho, jak budou data uložena. Jedná se o vytváření tabulek a polí. To je v podstatě vytváření struktury pro data. V, struktura může být vytvořena prostřednictvím editoru struktury: 1

2 * Editor struktury poskytuje intuitivní grafické uživatelské rozhraní umožňující vytvořit a modifikovat tabulky a pole. V jsou používány pro totéž příkazy k vytvoření tabulky a pole. příkazy CREATE, ALTER, TRUNCATE, a DROP sev zabývají definicí dat. Operace definice dat (struktury) Operace pro definice dat definují strukturu databáze. Jedná se o vytváření, úpravy a mazání tabulky v databázi, spolu s poli a datovými typy. Vytvoření tabulky Prvním krokem při budování databáze je vytvoření tabulky. Tento krok zahrnuje vytvoření názevu tabulky, a definování pole a datových typů. Vytvořte tabulku přes editor struktury. Neexistujeí příkaz k vytvoření tabulky programově. Chcete-li vytvořit tabulku v, použijte příkaz CREATE TABLE. Příkaz umožňuje uživateli definovat název tabulky, názvy polí, typy polí a vlastnosti pole. Příklad vytvoření tabulky v : CREATE TABLE tabulka_1 ( ID int NOT Null, Název Varchar(255), Primary Key (ID) ); Kód výše vytvoří tabulku s názvem "tabulka_1" se dvěma poli (ID a Název).Pole "ID" je číslo, které nemůže být null. "ID" je také nastaven jako primární klíč. Pole "Název" je typu alfa. Varchar (255), v je to řetězec o maximální délce 255 znaků. 2

3 Úpravy tabulky - Alter table Po vytvoření tabulky, je důležité mít schopnost existující tabulky upravovat, změnit. Chcete-li to provést, musí být tabulka změněna (alter). Ve, mohou být tabulky měněny opět přes editor struktury Uživatel/vývojář může Přidávat, mazat nebo modifikovat pole. Opět v klasickém jazyku neexistuje příkaz pro tyto operace. příkaz ALTER TABLE je používán k modifikaci existující tabulky v databázi pomocí. Níže je několik příkladů manipulace s užítím tohoto příkazu. --přidá Pole_2 type int to Tabulka_1 ALTER TABLE Tabulka_1 ADD Pole_2 int; -upraví Pole_1 z Tabulka_1 aby bylo typu int ALTER TABLE table_1 ALTER COLUMN field_1 int; vymaže Pole_1 z Tabulka_1 ALTER TABLE Tabulka_1 DROP COLUMN Pole_1; Vymazání tabulky - Drop table Jiný způsob modifikace tabulky je vymazání existující tabulky. Všechna pole, indexy, triggery a omezení jsou odstraněny spolu s odstraněnou tabulkou. Ve, mohou být tabulky vymazány opět jen přes editor struktury Tabulka, spolu se svázanými formuláři je přesunuta do koše. příkaz DROP TABLE je používán k vymazání existující tabulky v databázi pomocí. Na rozdíl od tabulka není přenesena do koše, ale je natrvalo vymazána. Na druhou stranu všechny formuláře tabulky jsou do koše přesunuty. Drop Table table_1; --vymaže tabulka_1 Operace manipulace dat Operace manipulace dat pracujís daty v databázi. Tyto operace zahrnují vytvoření dat, vymazání dat a modifikaci existujících dat. Zkrácení tabulky - Truncate table 3

4 Truncate table vymaže všechny záznamy z určené tabulky. Tabulka sama však zůstane zachována, tím se liší od DROP TABLE a patří tedy do manipulace s daty. Zázamy mohou být vymazány z tabulky jednoduše výběrem záznamů ve výstupním formuláři a když jsou zvýrazněny klepnutím na příslušné tlačítko nebo klávesy delete/backspace. Záznamy mohou být mazány i programem příkazy TRUNCATE TABLE, DELETE RECORD, nebo DELETE SELECTION. Truncate Table([tabulka_1]) //vymaže všechny záznamy z tabulka_1 příkaz TRUNCATE TABLE odstraní všechna data/záznamy určené tabulky. TRUNCATE TABLE table_1; --vymaže všechny záznamy z tabulka_1 Výběr záznamů Manipulace dat pracuje s daty databáze. Tyto operace zahrnují i výběř (vyhledábí) odpovídajících záznamů. když je skupina záznamů vybrána mohou operace výběru pracovat s tímto podvýběrem. Ve jmůže být záznam či záznamy vybrány pomocí příkazu QUERY (a další z této skupiny) nebo ALL RECORDS Použití těchto příkazů přenese tento výběr do platného výběru. Platný výběr je ve držen v paměti. Všechny operace manipulace dat jsou prováděny ke změně platného výběru. Platný výběr může být změněn pomocí: Výběrem všech záznamů pomocí ALL RECORDS Vyhledáváním záznamů příkazy QUERY, QUERY BY FORMULA, QUERY BY EXAMPLE, QUERY SELECTION atd. Např. Query([tabulka_1];[tabulka_1]ID=1) All Records([tabulka_1]) mohou být záznamy vybrány za pomoci příkazu SELECT. Na rozdíl od nedrží výběr v paměti. Chcete-li zachovat záznamy vybrané, umístěte je do proměnné. To lze provést pomocí klauzule INTO. Níže je syntaxe pro jednoduchý výběrový výrok: Select (field_1;field_2,...,field_n) From table_name Where <Condition> Into (:$arr_1, :$arr_2,...,:$arr_n); 4

5 Užití: /*vybere záznamy z table_1 ode ID=1 a umístí výsledek do proměných*/ Select * From table_1 Where ID=1 Into (:$var_id, :$var_f1, :$var_f2); Vytvoření záznamů Vytváření záznamú je podstatné pro všechny databáze Na rozdíl od ostatních operací manipulace dat výběr zde není potřeba, a mají různé cesty jak to udělat. Ve záznam může být vytvořen ručně z formuláře nebo programem. K vytvoření záznamu programem se používají příkazy CREATE RECORD a SAVE RECORD. //Vytvoří záznam v table_1 Create Record([table_1]) [table_1]field_1:= abc [table_1]field_2:=123 Save Record([table_1]) K vytvoření zaznamu pomocí je používán příkaz INSERT. - - vytvoří záznam v tabulce table_1 INSERT INTO table_1 (field_1, Field_2) VALUES ( abc,123) Vymazání záznamů Další zásadní funkce v databázi je schopnost odstranit existující záznamy. Předtím, než je možné záznam vymazat, musí být záznam nejdříve vybrán. Ve záznamy mohou být ručně nebo programově vymazány. Záznamy lze vymazat ručně výběrem v formuláři výstupu a stisknutím klávesy Backspace / Delete. může taky odstranit záznamy programově pomocí příkaz DELETE RECORD. //vymaže jeden záznam v table_1 Query([table_1];[table_1]field_1= abc ) Delete Record([table_1]) //vymaže výběr záznamů v table_1 Query([table_1];[table_1]ID>10) Delete Selection([table_1]) Vymazat záznam pomocí lze ve příkazem DELETE. Koncept je mírně odlišný od, protože neexistuje platný záznam či výběr k provedení operace Vymazat. Místo toho záznamy, které budou vymazány jsou určeny pomocí podmínek v klausuli WHERE příkazu. 5

6 vymaže všechny záznamy v table_1 ode field_1= abc DELETE FROM table_1 WHERE field_1= abc ; vymaže všechny záznamy v table_1 kde ID>10 DELETE FROM table_1 WHERE ID>10; Podmínka WHERE určuje, který záznam vymazat. Jestliže nenexistuje podmínka where, jsou vymazány všechny záznamy. Úprava záznamů Existující záznamy mohou být také modifikovány a aktualizovány. Před tím než lze záznam aktualizovat musí být nejdřív vybrán. Ve záznamy lze aktualizovat ručně nebo programově. Záznamy lze aktualizovat ručně úpravami existujících záznamů ve formulářích pro vstup / výstup. Stávající záznamy mohou být aktualizovány programově pomocí třídy dotazů QUERY, a přiřazováním hodnot každému poli. Níže jsou uvedeny příklady různých způsobů, jak aktualizovat záznamy. //Upraví jeden záznam v table_1 Query([table_1];[table_1]ID=1) [table_1]field_1:= def [table_1]field_2:=456 Save Record([table_1]) //Upraví výběr záznamů v table_1 pomocí smyčky For Query([table_1];[table_1]ID<10) For($i;1;Records in selection([table_1])) [table_1]field_1:=uppercase([table_1]field_1) Save Record([table_1]) Next Record([table_1]) End for //Upraví výběr záznamů v table_1 pomocí Apply To Selection (Použít na výběr) Query([table_1];[table_1]ID<10) Apply to selection([table_1];[table_1]field_1:=uppercase([table_1]field_1) Chcete-li aktualizovat záznamy pomocí užíjte příkazu UPDATE. Podobně jako u DELETE příkazu, koncept je zde poněkud jiný než v. Protože neexistuje žádný aktuální záznam k užití UPDATE operace, záznamy jež mají být aktualizovány, jsou určeny podmínkou v klauzuli WHERE. Syntaxe: //Upraví všechny záznamy v table_1 kde field_1= upravovanáhodnota UPDATE table_name SET fieldname1= nováhodnota WHERE field_1= upravovanáhodnota ; Užití: //Upraví všechny záznamy v table_1 kde field_1= abc UPDATE table_1 SET field_1= def WHERE field_1 = abc Klauzule WHERE URČÍ, ktery záznam upravit. Není-li WHERE upraví se všechny záznamy tabulky. 6

7 Vztahy V relační databázi, jsou vztahy důležitý pojem. Vztahy umožňují různým polím a samostatným tabulkám se propojit. To má mnoho výhod, včetně těch, které umožní, aby byla data uložena do samostatných tabulek efektivně (normalizovaně). Vytváření vztahů v lze provést ve editoru struktury. Vztahy lze natáhnout z jednoho pole do druhého. Pole skupina k jedinci a pole jedinec ke skupině jsou dvě protilehlé možnosti. V koncept cizího klíče definuje vztahy. Cizí klíč tabulky je spojen s primárním klíčem jiné tabulky.primární klíč pro tabulku je pole (nebo kombinace polí) který jednoznačně identifikuje každý záznam v tabulce. Cizí klíč jiné tabulky bude odkaz na primární klíč jiné tabulky s cílem určit, které záznamy se k němu vztahují. Definici (constraint) primární klíč a cizí klíč lze vytvořit pomocí CREATE TABLE, nebo přidat pomocí ALTER TABLE. Vytvoření tabulky s cizím klíčem Create Table Employees ( ID int Primary Key, Name VarChar(50), Company_ID int, CONSTRAINT Emp_Comp FOREIGN KEY (Company_ID) REFERENCES Company(ID) ); Úprava existující tabulky přidáním primárního klíče Alter Table Employees ADD PRIMARY KEY (ID); --Úprava existující tabulky přidáním cizího klíče Alter Table Employees ADD CONSTRAINT Emp_Comp FOREIGN KEY (Company_ID) REFERENCES Company(ID); Tabulka jedinců a Tabulka skupin Předpokládejme následující tabulky: V tomto nastavení je tabulka adres považován za tabulku "jedinců". Tabulka Faktura je-považován za tabulku "skupin". Chcete-li si zapamatovat tento koncept uvažte, že existuje mnoho (skupina( faktur vztahující se k jedné adrese", a "každa adresa může mít skupinu faktur". Stejně tak, pole v tabulce faktury, považovány za pole "skupin", zatímco soubory v tabulce adres jsou v 7

8 nazývány polem "jedninců". U tabulky faktur jsou terminologii pole Bill_To a Ship_To cizí klíče s odkazem na primární klíč tabulky adres (pole ID). Vztehy jsou v tomto případě samozřejmě neautomatické. Navazování vztahů: Zadávání dat Listování v záznamech v výstupním formuláři Zprávy Operace na výběr záznamů (dotazy, třídění, užití výrazu) Následující operace způsobí, že se vztah bude navázán (automatický): Když se naváže automatický vztah, související záznamy jsou načteny a vybrány. Je-li vybráno více než jeden záznam, první záznam ve výběru je natažen do paměti. V některých případech v příkazech a / nebo akcích uživatele je natažen pouze záznam (do formuláře). Vztažené záznamy nejsou však automaticky vybrány. V těchto případech vztažené záznamy se musí explicitně vybrat pomocí příkazů RELATE ONE nebo RELATE MANY podle souvislosti a potřebujeme zpřístupniz záznamy ve vztahu. One-to-many a many-to-one vztahy Vztah one-to-many jedinec ke skupině nastává, když se odkazuje tabulka "jedniců" na související záznamy v tabulce "skupin". Chcete-li vytvořit vztah one-to-many v je používán příkaz RELATE MANY. Stejně tak vztah many-to-one skupina k jedinci nastává tehdy, když tabulka "skupin" se odkazuje na související záznam v tabulce "jedninců". Chcete-li vytvořit many-to-one vztah, je používán příkaz RELATE ONE. Relate one RELATE ONE naváže automatický vztah jedince ke skupině z tabulky nebo pole jedinců k tabulce či poli skupin. V RELATE ONE (manytable) naváže všechny automatické vztahy skupin k jedinci pro tuto tabulku skupin v platném procesu; nebo hledá záznamy týkající se manuálního neautomatického vztahu RELATE ONE (manyfield) a pokud existuje, načte související záznam do paměti, a vytvoří platný záznam a platný výběr pro tuto vztaženou tabulku. Chcete-li zobrazit hodnoty adresního řádku se ve je vstupním formuláři faktury, musí se použít RELATRE ONE(patřičné pole skupin), vztah je neautomatický. Kód umožní zobrazit ve vstupním formuláři faktury vztažené adresy "ulice, město, stát, a PSČ. Kód níže je v místě polí Bill_To a Ship_To jako makro. Bill_To pole: RELATE ONE([Invoice]Bill_To) vstreet1:=[address]street vcity1:=[address]city vstate1:=[address]state vzip1:=[address]zip Ship_To pole: 8

9 RELATE ONE([Invoice]Ship_To) vstreet2:=[address]street vcity2:=[address]city vstate2:=[address]state vzip2:=[address]zip Výsledný vstupní formulář vypadá následovně: V, odkazujem na pole "jedinců" z tabulky "skupin", použijeme join tabulky "jedninců" na tabulku "skupin" a související pole/sloupce. Níže je syntaxe: Select one_field (s) From one_table join many_table on one_field_value=many_field_value Chcete-li zobrazit související položky tabulky Adresa, musíme připojit tabulku adres s tabulkou faktury, kde adresa primární klíč (id), se rovná cizí klíč ve faktuře (Bill_To a Ship_To). Použijte níže uvedený kód na makrech polí Bill_To a Ship_To k zobrazení souvisejícího záznamu Adresa. 9

10 Kód v Bill_To poli: Begin Select * From Address join Invoice on Address.ID=Invoice.Bill_To End //Uloží hodnoty sloupce z Address do proměnných vstreet1:=[address]street vcity1:=[address]city vstate1:=[address]state vzip1:=[address]zip Kód v Ship_To poli: Begin Select * From Address join Invoice on Address.ID=Invoice.Ship_To End /Uloží hodnoty sloupce z Address do proměnných vstreet2:=[address]street vcity2:=[address]city vstate2:=[address]state vzip2:=[address]zip Relate many RELATE MANY ustavuje všechny vztahy jedince k skupině vztazích pro tabulky nebo pole jedinců. Tento příkaz se používá v souvislosti s tabulkami "jedinců". Když je zobrazen formulář tabulky jedinců "One" (Address), související záznamy z tabulky "skupin" (faktury) jsou načteny a stalou se platným výběrem v této tabulce. Avšak pokud je vybrán záznam pro tabulku "jedinců" (adresa) programově vztažené záznamy z tabulky "skupin" (faktury), nejsou načteny. V tomto případě, musí být použit příkaz RELATE MANY k načtení vztažených záznamů. V níže uvedeném příkladu je vybrán jeden ze záznamu tabulky adres a je zobrazen ve vstupním formuláři programově. RELATE MANY se používá k načtení záznamů vztažených faktur. //vyhledání, navázání relace, úpravy QUERY([Customers];[Customers]ID=1) RELATE MANY([Customers]) $winref:=open form window([customers];"input") DIALOG([Customers];"Input") CLOSE WINDOW($winref) Spuštěním výše uvedeného kódu se zobrazí vstupní formulář se záznamem tabulky adres, kde Addres ID je 1. Veškeré faktury související s tímto záznamem se zobrazí v podformuláři Address'Invoices. 10

11 V odkazujeme na pole Many z pole One tabulky, propojíme je pomocí join tabulky many s tabulkou one. Syntaxe je níže Select many_field(s) From many_table Join one_table on many_field_value=one_field_value; Níže je uveden příklad, kterým se zavádí vzteh jeden k mnoha. Jakmile se ustaví vztah, záznamy faktur ve vztažené skupině jsou zobrazeny ve vstupním formuláři tabulky jedinců (adresa). Nejprve uvede do vztahu dvě tabulky pak vybere související skupinu faktur, pokud adresa ID = 1. Nakonec umístí záznamy do polí a ty pak mohou být zobrazeny v listboxu. Select * From Invoice join Address on (Invoice.Bill_To=Address.A_ID or Invoice.Ship_To=Address.ID) Where Address.ID=1 Into :arrid, :arrbill, :arrship, 11

12 Závěr To byl dvojí pohled do a porovnání klasické cesty a využitím z hlediska zakládání datové struktury a manipulace s daty. mocný nástroj pro konečného uživatele, ale z hlediska vývojáře je nutno posoudit, kam až uživatele pustí, bez nebezpečí pro strukturu dat a integritu dat. Nové rysy v v14 View Integrovaný engine v14 podporuje standardní view. Je to virtuální tabulka, jež může být sestavena za běhu naplněna z několika pevných tabulek databáze a upravena výpočty. Když je tabulka view definována, můžeme na ni používat příkazy jazyka jako třeba SELECT tak jako na pevnou tabulku. Údaje vyskytující se ve view, pohledu, jsou definovány pomocí definice dotazu na základě příkazu SELECT. Skutečné pevné tabulky použité v definici dotazu se nazývají "výchozí" tabulky. view obsahuje sloupce a řádky stejně jako standardní tabulky, ale ve skutečnosti neexistují; je to jen reprezentace vzniklá při zpracování a jsou uloženy v paměti. Pouze definice pohledu je ve skutečnosti uložena v databázi. Pro ovládání view jsou používány ve v14 dva příkazy CREATE VIEW CREATE [OR REPLACE] VIEW [schema_name.]view_name [(column_list)] AS select_statement[;] Příkaz CREATE VIIEW vytvoří pohled pro prohlížení s názvem view_name (což je standardní sql_name), obsahuje sloupce definované v parametru column_list. Pokud je tabulka pouhou kopií trvalé tabulky nemusíte zatat názvy a typy sloupců. Název sloupce budete muset zadat, pokud tento sloupec je funkce nebo je odvozen z aritmetického výrazu (skalární). Rovněž je nutné zadat název sloupce, pokud chcete, aby jste vyhnuli různým sloupcům se stejným názvem (například během operace JOIN), nebo po chcete použít jiný název sloupce, než ten, ze kterého je tento odvozen. Jestliže je parametr column_list zadán, musí obsahovat stejný počet sloupců, jako select_statememt definující podmínku hledání záznamů pro pohled. Jestliže je column_list vynechán, budou mít sloupce pohledu tytéž názvy jako v podmínce hledání select_statement. View jako tabulky musí mít jedinečné názvy Jestliže předáte možnost OR REPLACE, view je automaticky přepsáno jestliže již existuje. Tato možnost muže být užitečná ke zmněně definice již existujícího view bez použití více kroků vymazat/znovuzaložit přístupová práva k objektům již definovaným pro toto view. Když možnost OR REPLACE není předána a snažíme se vytvořit view s již existujícím názvem vrátí se chyba. schema_name je také standardní sql_name a můžete ho použít k označení názvu schématu, který obsahuje pohled. Pokud npředáte schema_name, nebo předáte název schématu, který neexistuje, pohled je automaticky přiřazen do výchozího schématu, který se nazývá "DEFAULT_SCHEMA". 12

13 select_statement označuje příkaz SELECT, který definune definice dotaz pohledu. Select_statement je stejný jako standardní SELECT v, ale s těmito výjimkami: nelze použít příkazy INTO, LIMIT nebo OFFSET. Omezení, ofset nebo přiřazení proměnných v, ale mohou být provedena v SELECT při volání/použití pohledu. nelze použít klauzuli GROUP BY. pohledy jsou v režimu pouze pro čtení a nelze je aktualizovat. Definice view je "statická", a není aktualizována pokud je zdrojová tabulka upraví nebo i odstraní. Konkrétně žádný sloupec přidáný později do tabulky se nezobrazí v pohledu založeném na této tabulce. Stejně tak, pokud se pokusíte o přístup k sloupcům odstraněném z tabulky pomocí (nové) definice pohledu, způsobí to chybu. Nicméně, pohled odkazující se na odstraněné zdrojové view bude i nadále pracovat. Ve skutečnosti, když vytvoříte pohled, převede se jakýkoliv odkaz view do odkazů na zdrojové tabulky. Pohledy mají globální dosah. Jakmile je pohled vytvořen pomocí CREATE VIEW, lze k němu přistupovat pomocí všech částí aplikace ( remote pomocí, externí databáze vytvořené pomocí příkazu CREATE DATABASE, jiné databáze pomocí příkazu login, atd.). A kdykoliv, dokud není odstraněn pomocí příkazu DROP VIEW. Příklady Je definována tabulka Lidé obsahující následující sloupce ID FIRST_NAME LAST_NAME DEPARTMENT INT64 VARCHAR(30) VARCHAR(30) VARCHAR(30) SALARY INT Dále je několik příkladů view s žádnými omezeními: CREATE VIEW FULLVIEW AS SELECT * FROM PEOPLE; view s "horizontalním" omezením na obeah tabulky. Když např. chcete zobrazit pouze lidi z dapartementu Marketing: CREATE VIEW HORIZONTALVIEW (ID, FirstName, LastName, Salary) AS SELECT ID, FIRST_NAME, LAST_NAME, SALARY FROM PEOPLE WHERE DEPARTMENT = 'Marketing'; složené view: CREATE VIEW AGGREGATEVIEW (FirstName, LastName AnnualSalary) AS SELECT FirstName, LastName, SALARY*12 FROM PEOPLE; pohled s "vertikálním" omezením na počet sloupců. Když např. nechcete zobrazit sloupec SALARY: 13

14 CREATE VIEW VERTICALVIEW (ID, FirstName, LastName, Department) AS SELECT ID, FIRST_NAME, LAST_NAME, DEPARTEMENT FROM PEOPLE; Když je view již definováno můžete jeu používat jako standardní tabulku. Např. chcete získat všechny lidi jejichž výplata je větší než 5,000 Euro a chceme je zobrazit v listboxu: SELECT * FROM FULLVIEW WHERE SALARY < 5000 INTO :aid, :afirstname, :alastname, :adepartment, :asalary; Další příklad, chcete získat každou osobu v department Marketing, jejichž jmého je "Michael": SELECT ID, LastName, Salary FROM HORIZONTALVIEW WHERE FirstName='Michael' INTO :aid, :alastname, :asalary; DROP VIEW DROP VIEW [IF EXISTS] [schema_name.]view_name[;] Příkaz DROP VIEW vymaže view s názvem view_name z databáze. Když je předáno omezení IF EXISTS neudělá nic a nevrátí chybu, pokud view již neexistuje. schema_name je standardní sql_name a můžete ho použít k označení názvu schématu, který obsahuje pohled. Pokud npředáte schema_name, nebo předáte název schématu, který neexistuje, pohled je automaticky přiřazen do výchozího schématu, který se nazývá DEFAULT_SCHEMA". Nové možnosti v ALTER TABLE Příkaz ALTER TABLE nyní přijímá nové možnosti: [Trailing] (používá se s klíčovým slovem ADD): vynutí si vytvoření sloupce jež má být vytvořen po posledním existujícím sloupci tabulky v souboru struktury. Tato volba je užitečná když sloupce obsahující data byly vymazány z tabulky (aniž by byla smazána data), aby se zabránilo že existující data jsou předána do nově definovaného sloupce. povolení / zakázání žurnálování pro tabulky povolení / zakázání "AutoIncrement" možnost pro typ LongInt pole zapnutí / vypnutí volby "Auto UUID" pro alfa pole typu UUID. ALTER TABLE sql_name {ADD column_definition [PRIMARY KEY] [TRAILING] DROP sql_name ADD primary_key_definition DROP PRIMARY KEY ADD foreign_key_definition DROP CONSTRAINT sql_name [{ENABLE DISABLE} REPLICATE] [{ENABLE DISABLE} LOG] [{ENABLE DISABLE} AUTO_INCREMENT] [{ENABLE DISABLE} AUTO_GENERATE] SET SCHEMA sql_name} 14

15 Příkaz vrátí chybu: Když je volitelný parametr ENABLE LOG přijat a žádný platný primární klíč není definován, pokud se pokusíte změnit nebo odstranit definici primárního klíče tabulky bez zakázání žurnálování pomocí DISABLE LOG. Ve verzi v14r3 ALTER DATABASE {ENABLE DISABLE} {INDEXES CONSTRAINTS TRIGGERS} Příkaz umožňuje povolit/zakázat triggery pro všechny tabulky v aktuální databázi pro aktuální relace (tj pro všechny uživatele a procesy dokud databáze není restartována). Optimalizace v14r4 SELECT DISTINCT" Příkaz funguje rychleji o 80% Begin SELECT DISTINCT Names FROM Employees INTO :$Emp; End Optimalizace v14r5 GROUP BY/ORDED BY" Spuštění SELECT pomocí Group by, pokud jsou použity pro jednotlivé tabulky je asi desetkrát rychleji než dříve. Složitější případy, zejména s tabulkami v relaci, byly také optimalizovány pro běh až desetkrát rychlejší. 15

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

SQL v14. 4D Developer konference. 4D Developer conference 2015 Prague, CZ Celebrating 30 years SQL v14 4D Developer konference Obsah části SQL Porovnání 4D a SQL Nové příkazy SQL Upravené příkazy SQL Optimalizace SQL SQL v14 porovnání Definice dat - struktury Manipulace s daty Definice dat Vytvoření

Více

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

Databázové systémy. - SQL * definice dat * aktualizace * pohledy. Tomáš Skopal Databázové systémy - SQL * definice dat * aktualizace * pohledy Tomáš Skopal Osnova přednášky definice dat definice (schémat) tabulek a integritních omezení CREATE TABLE změna definice schématu ALTER TABLE

Více

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

2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE 2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE Studijní cíl Tento blok je věnován základní syntaxi příkazu SELECT, pojmům projekce a restrikce. Stručně zde budou představeny příkazy

Více

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

Návrh a tvorba WWW stránek 1/14. PHP a databáze Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované

Více

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

Databázové systémy. Cvičení 6: SQL Databázové systémy Cvičení 6: SQL Co je SQL? SQL = Structured Query Language SQL je standardním (ANSI, ISO) textovým počítačovým jazykem SQL umožňuje jednoduchým způsobem přistupovat k datům v databázi

Více

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

Úvod do databázových systémů Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 8 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování Entita Entitní typ

Více

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR):

Jaký je rozdíl v definicicíh VARCHAR2(20 BYTE) a VARCHAR2(20 CHAR): Mezi příkazy pro manipulaci s daty (DML) patří : 1. SELECT 2. ALTER 3. DELETE 4. REVOKE Jaké vlastnosti má identifikující relace: 1. Je relace, která se využívá pouze v případě modelovaní odvozených entit

Více

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

Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc. 1 Kurz Databáze Zpracování dat Doc. Ing. Radim Farana, CSc. Obsah Druhy dotazů, tvorba dotazu, prostředí QBE (Query by Example). Realizace základních relačních operací selekce, projekce a spojení. Agregace

Více

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

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410

Více

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

Databázové systémy Cvičení 5.2 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

Více

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

Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hoksza, Ph.D. http://siret.cz/hoksza Databáze 2011/2012 SQL DDL (CREATE/ALTER/DROP TABLE), DML (INSERT/UPDATE/DELETE) RNDr.David Hksza, Ph.D. http://siret.cz/hksza Osnva Seznámení s SQL Server Management Studiem (SSMS) Základní architektura

Více

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

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou MySQL Typy tabulek Storage Engines MyISAM defaultní, neumí transakce, umí fulltext InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) MEMORY (HEAP) v paměti; neumí transakce ARCHIVE velké množství

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

7. Integrita a bezpečnost dat v DBS

7. Integrita a bezpečnost dat v DBS 7. Integrita a bezpečnost dat v DBS 7.1. Implementace integritních omezení... 2 7.1.1. Databázové triggery... 5 7.2. Zajištění bezpečnosti dat... 12 7.2.1. Bezpečnostní mechanismy poskytované SŘBD... 13

Více

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

Inovace a zkvalitnění výuky prostřednictvím ICT. Základní seznámení s MySQL Ing. Kotásek Jaroslav Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1 Šablona: Název: Téma: Autor: Číslo: Anotace: Inovace a zkvalitnění výuky prostřednictvím ICT Databáze Základní seznámení s MySQL

Více

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

Databáze I. Přednáška 4 Databáze I Přednáška 4 Definice dat v SQL Definice tabulek CREATE TABLE jméno_tab (jm_atributu typ [integr. omez.], jm_atributu typ [integr. omez.], ); integritní omezení lze dodefinovat později Definice

Více

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

8.2 Používání a tvorba databází 8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam

Více

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

SQL - trigger, Databázové modelování 6. přednáška z předmětu Datové struktury a databáze (DSD) Ústav nových technologií a aplikované informatiky Fakulta mechatroniky, informatiky a mezioborových studií Technická univerzita v Liberci jan.lisal@tul.cz

Více

Semestrální práce 2 znakový strom

Semestrální práce 2 znakový strom Semestrální práce 2 znakový strom Ondřej Petržilka Datový model BlockFileRecord Bázová abstraktní třída pro záznam ukládaný do blokového souboru RhymeRecord Konkrétní třída záznamu ukládaného do blokového

Více

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

Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky. 9. června 2007. krovacek@students.zcu.cz Databáze čajových sáčků Martina Málková Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky Databázové systémy 2 9. června 2007 krovacek@students.zcu.cz 1 1 Datová analýza V původním

Více

Access. Tabulky. Vytvoření tabulky

Access. Tabulky. Vytvoření tabulky Access správa databáze (tabulky, relace, omezující podmínky, data...) uživatelské prostředí pro práci s databází (formuláře, sestavy, datové stránky, makra...) ukázková aplikace Northwind hlavní okno databáze

Více

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

Úvod do databází. Modelování v řízení. Ing. Petr Kalčev Úvod do databází Modelování v řízení Ing. Petr Kalčev Co je databáze? Množina záznamů a souborů, které jsou organizovány za určitým účelem. Jaké má mít přínosy? Rychlost Spolehlivost Přesnost Bezpečnost

Více

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

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Šablona 32 VY_32_INOVACE_038.ICT.34 Tvorba webových stránek SQL stručné minimum OA a JŠ Jihlava, VY_32_INOVACE_038.ICT.34 Číslo

Více

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

Databáze I. 5. přednáška. Helena Palovská Databáze I 5. přednáška Helena Palovská palovska@vse.cz SQL jazyk definice dat - - DDL (data definition language) Základní databáze, schemata, tabulky, indexy, constraints, views DATA Databáze/schéma

Více

Virtual Private Database (VPD) Jaroslav Kotrč

Virtual Private Database (VPD) Jaroslav Kotrč Virtual Private Database (VPD) Jaroslav Kotrč Co je VPD Bezpečnostní politika pro přístup k databázi na úrovni řádků a sloupců. Bezpečnost přímo nad tabulkami. Není způsob, jak to obejít. SQL dotaz upraven

Více

Administrace Oracle. Práva a role, audit

Administrace Oracle. Práva a role, audit Administrace Oracle Práva a role, audit Filip Řepka 2010 Práva (privileges) Objekty (tabulky, pohledy, procedury,...) jsou v databázi logicky rozděleny do schémat. Každý uživatel má přiděleno svoje schéma

Více

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

Jazyk SQL databáze SQLite. připravil ing. petr polách Jazyk SQL databáze SQLite připravil ing. petr polách SQL - úvod Structured Query Language (strukturovaný dotazovací jazyk 70. léta min. století) Standardizovaný dotazovací jazyk používaný pro práci s daty

Více

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

KIV/ZIS cvičení 6. Tomáš Potužák KIV/ZIS cvičení 6 Tomáš Potužák Pokračování SQL Klauzule GROUP BY a dotazy nad více tabulkami Slučování záznamů do skupin (1) Chceme zjistit informace obsažené ve více záznamech najednou Klauzule GROUP

Více

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

DUM 12 téma: Příkazy pro tvorbu databáze DUM 12 téma: Příkazy pro tvorbu databáze ze sady: 3 tematický okruh sady: III. Databáze ze šablony: 7 Kancelářský software určeno pro: 4. ročník vzdělávací obor: 18-20-M/01 Informační technologie vzdělávací

Více

RELAČNÍ DATABÁZOVÉ SYSTÉMY

RELAČNÍ DATABÁZOVÉ SYSTÉMY RELAČNÍ DATABÁZOVÉ SYSTÉMY VÝPIS KONTROLNÍCH OTÁZEK S ODPOVĚDMI: Základní pojmy databázové technologie: 1. Uveďte základní aspekty pro vymezení jednotlivých přístupů ke zpracování hromadných dat: Pro vymezení

Více

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

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky Otázka 20 A7B36DBS Zadání... 1 Slovníček pojmů... 1 Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky... 1 Zadání Relační DB struktury sloužící k optimalizaci

Více

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

Databáze. Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu. Bedřich Košata Databáze Velmi stručný a zjednodušený úvod do problematiky databází pro programátory v Pythonu Bedřich Košata K čemu jsou databáze Ukládání dat ve strukturované podobě Možnost ukládat velké množství dat

Více

RELAČNÍ DATABÁZE ACCESS

RELAČNÍ DATABÁZE ACCESS RELAČNÍ DATABÁZE ACCESS 1. Úvod... 2 2. Základní pojmy... 3 3. Vytvoření databáze... 5 4. Základní objekty databáze... 6 5. Návrhové zobrazení tabulky... 7 6. Vytváření tabulek... 7 6.1. Vytvoření tabulky

Více

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

Úvod do MS Access. Modelování v řízení. Ing. Petr Kalčev Úvod do MS Access Modelování v řízení Ing. Petr Kalčev Postup při tvorbě aplikace Vytvoření tabulek Vytvoření relací Vytvoření dotazů Vytvoření formulářů Vytvoření sestav Tabulky Slouží k definování polí,

Více

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

Základy informatiky. 08 Databázové systémy. Daniela Szturcová Základy informatiky 08 Databázové systémy Daniela Szturcová Problém zpracování dat Důvodem je potřeba zpracovat velké množství dat - evidovat údaje o nějaké skutečnosti. o skupině lidí (zaměstnanců, studentů,

Více

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.

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. Popis ovládání 1. Úvod Tento popis má za úkol seznámit uživatele se základními principy ovládání aplikace. Ovládání je možné pomocí myši, ale všechny činnosti jsou dosažitelné také pomocí klávesnice. 2.

Více

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

B0M33BDT Technologie pro velká data. Supercvičení SQL, Python, Linux B0M33BDT Technologie pro velká data Supercvičení SQL, Python, Linux Sergej Stamenov, Jan Hučín 18. 10. 2017 Osnova cvičení Linux SQL Python 2 SQL pro uživatele aneb co potřebuje znát a umět bigdatový uživatel:

Více

Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MS Access propojení relací s formuláři a sestavami Ing.

Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MS Access propojení relací s formuláři a sestavami Ing. Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1 Šablona: Název: Téma: Autor: Číslo: Anotace: Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MS Access propojení

Více

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

Kapitola 6: Omezení integrity. Omezení domény - 6.1 - Omezení domény Referenční integrita Aserce Spouštěče (Triggers) Funkční závislosti Kapitola 6: Omezení integrity Omezení domény Omezení integrity zabraňují poškození databáze; zajišťují, že autorizované

Více

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

Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL 4 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, datové typy, klauzule SELECT, WHERE, a ORDER BY. Doporučená

Více

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

6. SQL složitější dotazy, QBE 6. SQL složitější dotazy, QBE Příklady : Veškeré příklady budou dotazy nad databází KONTAKTY nebo KNIHOVNA nebo FIRMA Databáze KONTAKTY OSOBA (Id_osoba, Příjmení, Jméno, Narození, Město, Ulice, PSČ) EMAIL

Více

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

Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MySQL základní pojmy, motivace Ing. Kotásek Jaroslav Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1 Šablona: Název: Téma: Autor: Číslo: Anotace: Inovace a zkvalitnění výuky prostřednictvím ICT Databázové systémy MySQL základní

Více

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

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410

Více

6. blok část B Vnořené dotazy

6. blok část B Vnořené dotazy 6. blok část B Vnořené dotazy Studijní cíl Tento blok je věnován práci s vnořenými dotazy. Popisuje rozdíl mezi korelovanými a nekorelovanými vnořenými dotazy a zobrazuje jejich použití. Doba nutná k nastudování

Více

DATABÁZE MS ACCESS 2010

DATABÁZE MS ACCESS 2010 DATABÁZE MS ACCESS 2010 KAPITOLA 5 PRAKTICKÁ ČÁST TABULKY POPIS PROSTŘEDÍ Spuštění MS Access nadefinovat název databáze a cestu k uložení databáze POPIS PROSTŘEDÍ Nahoře záložky: Soubor (k uložení souboru,

Více

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph)

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3aph) 2. a 3. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Co nás čeká: 2. soustředění 16.1.2009

Více

Databázové systémy I

Databázové systémy I 2015 Databázové systémy I PROJEKT 2 ČÁST MIROSLAV POKORNÝ Stránka 0 z 21 Zadání Implementujte datový model vytvořený v první části projektu do relační databáze a vytvořte pohledy a uloženou proceduru dle

Více

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

Sada 1 - PHP. 14. Úvod do jazyka SQL S třední škola stavební Jihlava Sada 1 - PHP 14. Úvod do jazyka SQL Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284 Šablona: III/2 - inovace a

Více

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Databázové systémy Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Vývoj databázových systémů Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace 60.-70. léta Program Komunikace Výpočty

Více

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

PL/SQL. Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd. PL/SQL Jazyk SQL je jazykem deklarativním, který neobsahuje procedurální příkazy jako jsou cykly, podmínky, procedury, funkce, atd. Rozšířením jazyka SQL o proceduralitu od společnosti ORACLE je jazyk

Více

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

Databázové systémy II. KIV/DB2 LS 2007/2008. Zadání semestrální práce Databázové systémy 2 Jméno a příjmení: Jan Tichava Osobní číslo: Studijní skupina: čtvrtek, 4 5 Obor: ININ SWIN E-mail: jtichava@students.zcu.cz Databázové systémy II. KIV/DB2 LS 2007/2008 Zadání semestrální

Více

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

Databázové systémy. Datová integrita + základy relační algebry. 4.přednáška Databázové systémy Datová integrita + základy relační algebry 4.přednáška Datová integrita Datová integrita = popisuje pravidla, pomocí nichž hotový db. systém zajistí, že skutečná fyzická data v něm uložená

Více

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

Základní přehled SQL příkazů Základní přehled SQL příkazů SELECT Základní použití Příkaz SELECT slouží k získání dat z tabulky nebo pohledu v požadované podobě. Získání všech řádků a sloupců z tabulky SELECT * FROM Person.Contact

Více

1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam.

1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam. 10.6.7 POSTUP TVORBY KOMBINOVANÉHO SEZNAMU 1. Umístěte kurzor do sloupce Datový typ na řádek s polem, ve kterém vytvořit chcete seznam. 2. V rozbalovací nabídce se seznamem datových typů vyberte volbu

Více

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Databáze MS-Access Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová Obsah Principy a možnosti databází. Uložení dat v databázi, formáty dat, pole, záznamy, tabulky, vazby mezi záznamy. Objekty databáze

Více

Stored Procedures & Database Triggers, Tiskové sestavy v Oracle Reports

Stored Procedures & Database Triggers, Tiskové sestavy v Oracle Reports , Marek Rychlý Vysoké učení technické v Brně Fakulta informačních technologií Ústav informačních systémů Demo-cvičení pro IDS 9. dubna 2014 Marek Rychlý Stored Procedures & Database Triggers, Demo-cvičení

Více

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

Informační systémy 2008/2009. Radim Farana. Obsah. Dotazy přes více tabulek 5 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, Spojení tabulek, agregační dotazy, jednoduché a složené

Více

Oracle XML DB. Tomáš Nykodým

Oracle XML DB. Tomáš Nykodým Oracle XML DB Tomáš Nykodým xnykodym@fi.muni.cz Osnova Oracle XML DB Architektura Oracle XML DB Hlavní rysy Oracle XML DB Hlavní rysy Oracle XML DB - pokračování XMLType XML Repository Využívání databázových

Více

Návod k aplikaci SQL Tools v.2.3

Návod k aplikaci SQL Tools v.2.3 Návod k aplikaci SQL Tools v.2.3 Jiří Chroust Copyright 2007 CENIA, laboratoř GIS 1. Úvod 2. Části základního okna 2.1. Menu 2.1.1. Connection 2.1.2. Help 2.1.3. Languages 2.2. Nástrojová lišta 2.3. Strom

Více

PG 9.5 novinky ve vývoji aplikací

PG 9.5 novinky ve vývoji aplikací PG 9.5 novinky ve vývoji aplikací P2D2 2016 Antonín Houska 18. února 2016 Část I GROUPING SETS, ROLLUP, CUBE Agregace Seskupení řádků tabulky (joinu) do podmnožin podle určitého kĺıče. Za každou podmnožinu

Více

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) Marketingová komunikace Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph) 2. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Minulé soustředění úvod

Více

Vkládání, aktualizace, mazání

Vkládání, aktualizace, mazání Kapitola 4 Vkládání, aktualizace, mazání Tématem několika předchozích kapitol byly základní techniky pokládání dotazů, které se všechny zaměřovaly na zisk dat z databáze. V kapitole čtvrté půjde o něco

Více

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

KIV/ZIS cvičení 5. Tomáš Potužák KIV/ZIS cvičení 5 Tomáš Potužák Úvod do SQL (1) SQL (Structured Query Language) je standardizovaný strukturovaný dotazovací jazyk pro práci s databází Veškeré operace v databázi se dají provádět pomocí

Více

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

POSTUP PRO VYTVOŘENÍ STRUKTUR PRO UKLÁDÁNÍ RDF DAT V ORACLE POSTUP PRO VYTVOŘENÍ STRUKTUR PRO UKLÁDÁNÍ RDF DAT V ORACLE Upozornění: Pro práci s RDF Oracle daty je třeba mít nainstalován Oracle Spatial Resource Description Framework (RDF). 1. Vytvoření tabulkového

Více

Použití databází na Webu

Použití databází na Webu 4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové

Více

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox 02. HODINA Obsah: 1. Typy souborů a objektů 2. Ovládací prvky Label a TextBox 3. Základní příkazy a vlastnosti ovládacích prvků 4. Práce s objekty (ovládací prvky a jejich vlastnosti) 2.1 Typy souborů

Více

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná.

Nový způsob práce s průběžnou klasifikací lze nastavit pouze tehdy, je-li průběžná klasifikace v evidenčním pololetí a školním roce prázdná. Průběžná klasifikace Nová verze modulu Klasifikace žáků přináší novinky především v práci s průběžnou klasifikací. Pro zadání průběžné klasifikace ve třídě doposud existovaly 3 funkce Průběžná klasifikace,

Více

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

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410

Více

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

Úvod do databázových systémů Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Úvod do databázových systémů Cvičení 3 Ing. Petr Lukáš petr.lukas@vsb.cz Ostrava, 2014 Opakování 4 fáze vytváření

Více

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky

Microsoft Access. Úterý 26. února. Úterý 5. března. Typy objektů databáze: Vytvoření a návrh nové tabulky Úterý 26. února Microsoft Access Databáze je seskupení většího množství údajů, které mají určitou logiku a lze je určitým způsobem vyhodnocovat, zpracovávat a analyzovat Access je jedním z programů určených

Více

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi. Databáze Základní pojmy Pojem databáze označuje obecně souhrn informací, údajů, dat o nějakých objektech. Úkolem databáze je hlídat dodržení všech omezení a dále poskytovat data při operacích. Objekty

Více

Obrázek 1: Struktura programu z hlediska zapojení

Obrázek 1: Struktura programu z hlediska zapojení MANUÁL K PROGRAMU DBADVOKÁT Program byl vytořený za účelem třídění a uchovávání jednotlivých spisů (elektronické dokumenty [doc, xls, odt, pdf, xml,...], emaily a další důležité soubory) v centralním počítači

Více

Ukládání a vyhledávání XML dat

Ukládání a vyhledávání XML dat XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2014/12/04 19:41:24 $ Obsah Ukládání XML dokumentů... 3 Ukládání XML do souborů... 4 Nativní XML databáze... 5 Ukládání

Více

Nemocnice. Prvotní analýza a plán projektu

Nemocnice. Prvotní analýza a plán projektu Nemocnice Projekt do předmětu AIS Prvotní analýza a plán projektu Lukáš Pohl, xpohll00, xkosti03 Jan Novák, xnovak79 2009/2010 1 Neformální specifikace FN potřebuje informační systém, který bude obsahovat

Více

Operátory ROLLUP a CUBE

Operátory ROLLUP a CUBE Operátory ROLLUP a CUBE Dotazovací jazyky, 2009 Marek Polák Martin Chytil Osnova přednášky o Analýza dat o Agregační funkce o GROUP BY a jeho problémy o Speciální hodnotový typ ALL o Operátor CUBE o Operátor

Více

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

Základy informatiky. 06 Databázové systémy. Kačmařík/Szturcová/Děrgel/Rapant Základy informatiky 06 Databázové systémy Kačmařík/Szturcová/Děrgel/Rapant Problém zpracování dat důvodem je potřeba zpracovat velké množství dat, evidovat údaje o nějaké skutečnosti: o skupině lidí (zaměstnanců,

Více

Marketingová komunikace. 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3bph)

Marketingová komunikace. 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3bph) Marketingová komunikace Kombinované studium Skupina N9KMK3PH (vm3bph) 3. soustředění Mgr. Pavel Vávra 9103@mail.vsfs.cz http://vavra.webzdarma.cz/home/index.htm Zdroje Studijní materiály Heleny Palovské

Více

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

Měřící systém se vzdáleným přístupem. Databáze ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA ELEKTROTECHNICKÁ KATEDRA MĚŘENÍ Měřící systém se vzdáleným přístupem Databáze Jiří Javůrek 2003/2005 0. Obsah 0. Obsah...1 1. Požadavky...2 2. Struktura databáze...2

Více

EQAS Online. DNY kontroly kvality a speciálních metod HPLC, Lednice 8.-9.11.2012

EQAS Online. DNY kontroly kvality a speciálních metod HPLC, Lednice 8.-9.11.2012 EQAS Online DNY kontroly kvality a speciálních metod HPLC, Lednice 8.-9.11.2012 Co je program EQAS Online Nový program od Bio-Radu pro odesílání výsledků externího hodnocení kvality Přístupný je prostřednictvím

Více

Administrace Oracle Práva a role, audit. Kukhar Maria 29.10.2012

Administrace Oracle Práva a role, audit. Kukhar Maria 29.10.2012 Administrace Oracle Práva a role, audit Kukhar Maria 29.10.2012 Ve výchozím nastavení, uživatel Oracle nemůže nic dělat, ani připojit se k databázi. Aby uživatele měli přistup k DB, je třeba vytvořit uživatelské

Více

Databázové systémy I

Databázové systémy I Databázové systémy I Přednáška č. 8 Ing. Jiří Zechmeister Fakulta elektrotechniky a informatiky jiri.zechmeister@upce.cz Skupinové a souhrnné dotazy opakování Obsah Pohledy syntaxe použití význam Vnořené

Více

Tiskové sestavy. Zdroj záznamu pro tiskovou sestavu. Průvodce sestavou. Použití databází

Tiskové sestavy. Zdroj záznamu pro tiskovou sestavu. Průvodce sestavou. Použití databází Tiskové sestavy Tiskové sestavy se v aplikaci Access používají na finální tisk informací z databáze. Tisknout se dají všechny objekty, které jsme si vytvořili, ale tiskové sestavy slouží k tisku záznamů

Více

SQL. strukturovaný dotazovací jazyk. Structured Query Language (SQL)

SQL. strukturovaný dotazovací jazyk. Structured Query Language (SQL) SQL strukturovaný dotazovací jazyk Structured Query Language (SQL) SQL - historie 1974-75 - IBM - 1.prototyp - SEQUEL od 1979 - do praxe - ORACLE (1979) IBM - SQL/DS (1981), DB/2 (1983) postupně přijímán

Více

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

Text úlohy. Systémový katalog (DICTIONARY): Úloha 1 Částečně správně Bodů 050 / 100 Systémový katalog (DICTIONARY): a Se skládá z tablek a pohledů uložených v tabulkovém SYSTEM b Všechny tabulky vlastní uživatel SYS c Se skládá z tablek a pohledů

Více

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání Čtvrtek 3. listopadu Makra v Excelu Obecná definice makra: Podle definice je makro strukturovanou definicí jedné nebo několika akcí, které chceme, aby MS Excel vykonal jako odezvu na nějakou námi definovanou

Více

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

Primární klíč (Primary Key - PK) Je právě jedna množina atributů patřící jednomu z kandidátů primárního klíče. Primární a cizí klíč Kandidát primárního klíče (KPK) Je taková množina atributů, která splňuje podmínky: Unikátnosti Minimálnosti (neredukovatelnosti) Primární klíč (Primary Key - PK) Je právě jedna množina

Více

Microsoft Office. Word hromadná korespondence

Microsoft Office. Word hromadná korespondence Microsoft Office Word hromadná korespondence Karel Dvořák 2011 Hromadná korespondence Hromadná korespondence je způsob, jak určitý jeden dokument propojit s tabulkou obsahující více záznamů. Tímto propojením

Více

Studijní skupiny. 1. Spuštění modulu Studijní skupiny

Studijní skupiny. 1. Spuštění modulu Studijní skupiny Studijní skupiny 1. Spuštění modulu Studijní skupiny 2. Popis prostředí a ovládacích prvků modulu Studijní skupiny 2.1. Rozbalovací seznamy 2.2. Rychlé filtry 2.3. Správa studijních skupin 2.3.1. Seznam

Více

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

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23 Stručný obsah 1. Stručný úvod do relačních databází 13 2. Platforma 10g 23 3. Instalace, první přihlášení, start a zastavení databázového serveru 33 4. Nástroje pro administraci a práci s daty 69 5. Úvod

Více

Databáze pro evidenci výrobků

Databáze pro evidenci výrobků Databáze pro evidenci výrobků Databáze ve formátu Microsoft Access je součástí systému, který řídí automatizovanou výrobní linku. Tabulka tblcharge obsahuje data o výrobcích a je plněna automaticky řídicím

Více

Co je nového 2018 R2

Co je nového 2018 R2 Co je nového 2018 R2 Obsah NOVINKY... 5 1: Vyhledat prvek... 5 2: Čáry modelu podle... 6 3: Duplikovat výkresy... 7 4: Délka kabelů... 8 5: Výškové kóty... 9 VYLEPŠENÍ... 10 1: Excel Link... 10 2: Uspořádání

Více

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

Informační systémy 2008/2009. Radim Farana. Obsah. Základní principy XML 10 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Export a import dat Formát XML a SQL server Zálohování a obnova

Více

Relace x vztah (relationship)

Relace x vztah (relationship) Relace x vztah (relationship) Peter Chen, Peter Pin-Shan (March 1976): "The Entity-Relationship Model Toward a Unified View of Data". ACM Transactions on Database Systems 1. E-R diagram v Chennově notaci

Více

Roční periodická zpráva projektu

Roční periodická zpráva projektu WAK-1F44C-2005-2 WAK System Název projektu: Automatizovaná výměna dat mezi informačními systémy krizového řízení v dopravě s jednotným univerzálním a implementovaným rozhraním založeným na standardu webových

Více

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4 CRM SYSTÉM KORMORÁN PŘÍRUČKA ADMINISTRÁTORA Obsah 1 Administrace systému 3 1.1 Uživatelské účty.................................. 3 1.2 Přístupová práva................................. 3 1.3 Moduly.......................................

Více

- sloupcové integritní omezení

- sloupcové integritní omezení CREATE TABLE - CREATE TABLE = definice tabulek a jejich IO - ALTER TABLE = změna definice schématu - aktualizace - INSERT INTO = vkládání - UPDATE = modifikace - DELETE = mazání CREATE TABLE Základní konstrukce

Více

Níže uvedená tabulka obsahuje technické údaje a omezení aplikace Excel (viz také článek Technické údaje a omezení aplikace Excel (2007).

Níže uvedená tabulka obsahuje technické údaje a omezení aplikace Excel (viz také článek Technické údaje a omezení aplikace Excel (2007). Níže uvedená tabulka obsahuje technické údaje a omezení aplikace - (viz také článek Technické údaje a omezení aplikace Excel (). otevřených sešitů a systémovými prostředky a systémovými prostředky a systémovými

Více

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

5. POČÍTAČOVÉ CVIČENÍ 5. POČÍTAČOVÉ CVIČENÍ Databáze Databázi si můžeme představit jako místo, kam se ukládají všechny potřebné údaje. Přístup k údajům uloženým v databázi obstarává program, kterému se říká Systém Řízení Báze

Více

Lokality a uživatelé

Lokality a uživatelé Administrátorský manuál TTC TELEKOMUNIKACE, s.r.o. Třebohostická 987/5 100 00 Praha 10 tel.: 234 052 111 fax.: 234 052 999 e-mail: ttc@ttc.cz http://www.ttc-telekomunikace.cz Datum vydání: 15.října 2013

Více