RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague
|
|
- Adam Čermák
- před 5 lety
- Počet zobrazení:
Transkript
1 seminář: Administrace Oracle (NDBI013) LS2017/18 RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague
2 Rozšíření bezpečnostní politiky Oracle o omezení na úrovni jednotlivých řádků a sloupců Pro uživatele, kterého se bezpečnostní politika týká, je v zásadě transparentní realizace příslušného omezení se provádí přidáním další vygenerované podmínky do WHERE klauzule
3 Původní dotaz od uživatele SELECT rc FROM zamestnanci; Uplatnění bezpečnostní politiky, která zakazuje každému zaměstnanci prohlížet si osobní údaje jiných zaměstnanců SELECT rc FROM zamestnanci WHERE id=sys_context( 'USERENV', 'SESSION_USER'); M. Kopecký NDBI013 3
4 Bezpečnost omezení jsou vynucována databází přímo nad jejími objekty (tabulky, pohledy, atd.) aplikace nemá možnost tato omezení měnit Jednoduchost je vynucována vůči všem aplikacím stejně a automaticky Flexibilita dotčené typy dotazů, sloupce, funkce generující podmínku do WHERE,... Optimalizace vyhodnocení podmínek M. Kopecký NDBI013 4
5 Generující funkce, která vrací WHERE podmínku Jejími argumenty jsou jméno schématu a jméno databázového objektu Vrací typ varchar2 Návratová hodnota musí být validní WHERE podmínkou Nesmí číst data z tabulky, se kterou je svázána M. Kopecký NDBI013 5
6 Politika svazující funkci s konkrétními objekty Příslušné procedury pracující s politikami jsou implementovány v balíčku DBMS_RLS Oprávnění definovat nové politiky má pouze uživatel SYS a uživatelé s právem EXECUTE tohoto balíčku Nejdůležitějšími procedurami pro manipulaci s politikami jsou ADD_POLICY a DROP_POLICY M. Kopecký NDBI013 6
7 CREATE OR REPLACE FUNCTION hide_admins ( v_schema IN varchar2, v_objname IN varchar2 ) RETURN varchar2 AS con varchar2(100); BEGIN con := 'usergroup!=0 RETURN (con); END hide_admins; M. Kopecký NDBI013 7
8 BEGIN DBMS_RLS.ADD_POLICY( object_schema => 'test', object_name => 'users', policy_name => 'admin_protection', policy_function => 'hide_admins', statement_types => 'SELECT,INDEX ); END; M. Kopecký NDBI013 8
9 Alternativa pro výchozí filtrování po řádcích pomocí klauzule WHERE (viz minulý slide) Používá se pouze pro SELECT Uživatel dostane všechny řádky, ale hodnoty chráněných sloupců v dříve neviditelných řádcích budou nahrazeny za NULL Je potřeba definovat sloupce, kterých se skrývání týká M. Kopecký NDBI013 9
10 BEGIN DBMS_RLS.ADD_POLICY( object_schema => 'test', object_name => 'users', policy_name => 'admin_protection', policy_function => 'hide_admins', sec_relevant_cols_opt => DBMS_RLS.ALL_ROWS, sec_relevant_cols => 'hashpwd,name,surname'); END M. Kopecký NDBI013 10
11 BEGIN DBMS_RLS.ADD_POLICY( object_schema => 'test', object_name => 'users', policy_name => 'admin_protection', policy_function => 'hide_admins', --sec_relevant_cols_opt => -- DBMS_RLS.ALL_ROWS, sec_relevant_cols => 'hashpwd,name,surname'); END Bez DBMS_RLS.ALL_ROWS jiné chování Pokud v SELECT není žádný relevantní sloupec, potom se zobrazí všechny řádky Pokud v SELECT je nějaký relevantní sloupec, zobrazí se jen řádky s ohledem na přidané WHERE M. Kopecký NDBI013 11
12 Možnost seskupování politik a jejich společné aplikace vhodné především v případě, kdy aplikace používá mnoho bezpečnostních politik na málo databázových objektů Další procedury v DBMS_RLS {CREATE DELETE}_POLICY_GROUP {ADD DROP}_GROUPED_POLICY {ADD DROP}_POLICY_CONTEXT M. Kopecký NDBI013 12
13 Pokud není definován POLICY_CONTEXT, použijí se všechny skupiny politik Výchozí skupina politik je SYS_DEFAULT je vždy platná a nelze jí smazat Aplikace si může vybrat další skupiny politik, které bude používat M. Kopecký NDBI013 13
14 Kontext aplikace je vhodným místem pro ukládání informací o uživateli a dalších relevantních údajů Přístup k němu je rychlejší než provádění dotazů zejména pokud závisí na více atributech M. Kopecký NDBI013 14
15 Parametr POLICY_TYPE v proceduře ADD_POLICY Hodnoty DYNAMIC STATIC SHARED_STATIC CONTEXT_SENSITIVE SHARED_CONTEXT_SENSITIVE M. Kopecký NDBI013 15
16 Politiky nelze aplikovat na objekty ve schématu SYS SYS a uživatelé s právem EXEMPT_ACCESS_POLICY nepodléhají politikám M. Kopecký NDBI013 16
17 Vytvoření politiky, která limituje přístup zákazníkům do tabulky OE.ORDERS pouze na své vlastní objednávky 1) Uživatel SYS vytvoří administrátora politiky a svěří mu potřebná oprávnění GRANT CREATE SESSION, CREATE ANY CONTEXT, CREATE PROCEDURE, CREATE TRIGGER, ADMINISTER DATABASE TRIGGER TO sysadmin_vpd IDENTIFIED by password ; GRANT EXECUTE ON DBMS_SESSION to sysadmin_vpd; GRANT EXECUTE ON DBMS_RLS to sysadmin_vpd; X xx M. Kopecký NDBI013 17
18 2) Dále vytvoří účty dvěma ukázkovým zákazníkům GRANT CREATE SESSION TO brooke IDENTIFIED by pwd1 ; GRANT CREATE SESSION TO woods IDENTIFIED by pwd2 ; 3) Odemkne uživatelský účet pro samotnou aplikaci a nastaví mu nové heslo ukázkový uživatel a schéma scott ALTER USER SCOTT ACCOUNT UNLOCK IDENTIFIED by pwd3 ; 4) Uživatel SCOTT se přihlásí a vytvoří a naplní tabulky zákazníků a objednávek M. Kopecký NDBI013 18
19 CREATE TABLE customers ( cust_no NUMBER(4), cust_ VARCHAR(20), cust_name VARCHAR(20)); INSERT INTO customers VALUES (1234, 'BROOKE', 'Ted Brooke'); INSERT INTO customers VALUES (5678, 'WOODS', 'Bill Woods'); CREATE TABLE orders_tab ( cust_no NUMBER(4), ord_no NUMBER(4)); M. Kopecký NDBI013 19
20 INSERT INTO orders_tab VALUES (1234, 9876); INSERT INTO orders_tab VALUES (5678, 5432); INSERT INTO orders_tab VALUES (5678, 8765); 5) Uživatel SCOTT udělí právo čtení tabulky uživatelů správci VPD a oběma uživatelů právo čtení objednávek GRANT SELECT ON CUSTOMERS TO sysadmin_vpd; GRANT SELECT ON ORDERS TO brooke; GRANT SELECT ON ORDERS TO woods; 6) SYSADMIN_VPD vytvoří kontext X xx M. Kopecký NDBI013 20
21 CREATE OR REPLACE CONTEXT orders_ctx USING orders_pkg; 7) A definuje jeho balíček CREATE OR REPLACE PACKAGE orders_pkg IS PROCEDURE set_custnum; END; CREATE OR REPLACE PACKAGE BODY orders_pkg IS PROCEDURE set_custnum AS custnum NUMBER; BEGIN SELECT cust_no INTO custnum FROM scott.customers WHERE cust_ =sys_context('user_env', 'SESSION_USER'); DBMS_SESSION.SET_CONTEXT('orders_ctx', 'cust_no', custnum); M. Kopecký NDBI013 21
22 ... EXCEPTION WHEN NO_DATA_FOUND THEN NULL; END SET_CUSTNUM; END; 8) Vytvoří trigger, který při každém přihlášení uživatele zaznamená jeho ID do kontextu CREATE TRIGGER set_custno_trig AFTER LOGON ON DATABASE BEGIN sysadmin_vpd.orders_pkg.set_custnum; END; M. Kopecký NDBI013 22
23 9) Správce VPD nadefinuje generující funkci CREATE OR REPLACE FUNCTION get_user_orders( in_schema IN varchar2, in_object IN varchar2) RETURN varchar2 AS orders_pred varchar2(400); BEGIN orders_pred := 'cust_no=sys_context(''orders_ctx'',''cust_no'')'; RETURN orders_pred; END; 10) A nakonec vytvoří samotnou politiku M. Kopecký NDBI013 23
24 BEGIN DBMS_RLS.ADD_POLICY( object_schema => 'scott', object_name => 'orders', policy_name => 'orders_policy', function_schema => 'sysadmin_vpd', policy_function => 'get_user_orders', statement_types => 'select ); END; M. Kopecký NDBI013 24
25 Ukázka filtrování sloupců podle právě přihlášeného uživatele 1) SYS vytvoří administrátora skupiny politik a uživatele GRANT CREATE SESSION TO apps_user IDENTIFIED by pwd1 ; GRANT CREATE SESSION, CREATE PROCEDURE, CREATE ANY CONTEXT TO sysadmin_pg IDENTIFIED by pwd2; 2) Pověří ho administrováním politik GRANT EXECUTE ON DBMS_RLS TO sysadmin_pg; M. Kopecký NDBI013 25
26 3) Uživatel SCOTT vytvoří a naplní tabulku produktů a nechá z ní číst aplikačního uživatele CREATE TABLE product_codes ( group_a varchar(32), year_a varchar(32), group_b varchar(32), year_b varchar(32)); INSERT INTO product_codes VALUES ('BF', 2008, 'BI', 2004); INSERT INTO product_codes VALUES ('HT', 2008, 'BN', 2008); INSERT INTO product_codes VALUES ('BP', 2006, 'HT', 2003); GRANT SELECT ON product_codes TO apps_user; M. Kopecký NDBI013 26
27 3) SYSADMIN_PG vytvoří dvě skupiny politik BEGIN DBMS_RLS.CREATE_POLICY_GROUP( object_schema => 'scott', object_name => 'product_codes', policy_group => 'provider_{a b}_group'); END; M. Kopecký NDBI013 27
28 4) A k oběma politikám vytvoří generující funkci CREATE OR REPLACE FUNCTION vpd_function_provider_{a b}( in_schema IN varchar2, in_object IN varchar2) return varchar2 AS predicate varchar2(8) default NULL; BEGIN IF LOWER(SYS_CONTEXT( 'USERENV', 'CLIENT_IDENTIFIER'))='provider_{a b} THEN predicate := '1=2'; ELSE predicate := NULL; END IF; RETURN predicate; END; M. Kopecký NDBI013 28
29 5) Přidá obě politiky do svých skupin BEGIN DBMS_RLS.ADD_GROUPED_POLICY( object_schema => 'scott', object_name => 'product_codes', policy_group => 'provider_{a b}_group', policy_name => 'filter_provider_{a b}', function_schema => 'sysadmin_pg', policy_function => 'vpd_function_provider_{a b}', policy_type => DBMS_RLS.CONTEXT_SENSITIVE, sec_relevant_cols => 'group_(b a),year_{b a}', sec_relevant_cols_opt => DBMS_RLS.ALL_ROWS); END; M. Kopecký NDBI013 29
30 6) Vytvoří řídící kontext aplikace a jeho balíček CREATE OR REPLACE CONTEXT provider_ctx USING provider_package; CREATE OR REPLACE PACKAGE provider_package AS PROCEDURE set_provider_context( policy_group varchar2 default NULL); END; CREATE OR REPLACE PACKAGE BODY provider_package AS PROCEDURE set_provider_context( policy_group varchar2 default NULL) IS M. Kopecký NDBI013 30
31 BEGIN CASE LOWER(SYS_CONTEXT( 'USERENV', 'CLIENT_IDENTIFIER')) WHEN 'provider_a' THEN DBMS_SESSION.SET_CONTEXT( 'provider_ctx', 'policy_group', 'PROVIDER_A_GROUP'); WHEN 'provider_b' THEN DBMS_SESSION.SET_CONTEXT( 'provider_ctx', 'policy_group' 'PROVIDER_B_GROUP'); END CASE; END SET_PROVIDER_CONTEXT; END; M. Kopecký NDBI013 31
32 7) Nakonec spojí kontext s tabulkou a přidělí aplikačnímu uživateli právo spouštět jeho balíček BEGIN DBMS_RLS.ADD_POLICY_CONTEXT( object_schema => 'scott', object_name => 'product_codes', namespace => 'provider_ctx', attribute => 'policy_group'); END; GRANT EXECUTE ON provider_package TO apps_user; M. Kopecký NDBI013 32
Virtual private database. Antonín Steinhauser
Virtual private database Antonín Steinhauser Základní princip VPD Rozšíření bezpečnostní politiky Oracle o omezení na úrovni jednotlivých řádků a sloupců Pro uživatele, kterého se bezpečnostní politika
VíceVirtual 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íceVirtuální privátní databáze
Virtuální privátní databáze umožňuje nastavit zásady v podobě predikátu (klauzule WHERE) připojených ke všem dotazům, které uživatelé zadávají do DB zabezpeční se vztahuje na data, nikoliv na aplikaci
VíceStored 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ícePL/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íceText ú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íceDatabá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íceRNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague
seminář: Administrace Oracle (NDBI013) LS2017/18 RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague User-Managed Backup and
VíceZá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íceSemestrální práce z DAS2 a WWW
Univerzita Pardubice Fakulta elektrotechniky a informatiky Semestrální práce z DAS2 a WWW Databázová část Matěj Trakal 8.12.2009 Kapitola 1: Obsah KAPITOLA 1: OBSAH 2 KAPITOLA 2: ZÁKLADNÍ CHARAKTERISTIKA
VíceUniverzita Pardubice. Fakulta elektrotechniky a informatiky SEMESTRÁLNÍ PRÁCE PRO PŘEDMĚT IDAS2
Univerzita Pardubice Fakulta elektrotechniky a informatiky SEMESTRÁLNÍ PRÁCE PRO PŘEDMĚT IDAS2 Jan Bartocha 2012 / 2013 IT 1. Základní charakteristika Téma mé semestrální práce se zaměřuje na vypůjčování
VíceRNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague
seminář: Administrace Oracle (NDBI013) LS2017/18 RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague Zvyšuje výkon databáze
VíceInnoDB 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íceDatabá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íceRNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague
seminář: Administrace Oracle (NDBI013) LS2017/18 RNDr. Michal Kopecký, Ph.D. Department of Software Engineering, Faculty of Mathematics and Physics, Charles University in Prague CREATE USER jmeno IDENTIFIED
VíceNá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íce2. 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íceAdministrace 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ícePráva a role. Martin Polák. NDBI013 Administrace Oracle
Práva a role Martin Polák NDBI013 Administrace Oracle Práva a role Práva slouží k omezení možností uživatele právě tak, aby mohl provádět úkoly jemu svěřené. Role jsou pojmenované skupiny práv a slouží
VíceVerzování a publikace dat na webu za pomoci PostgreSQL
Prague PostgreSQL Developers' Day 2013 Verzování a publikace dat na webu za pomoci PostgreSQL Jan Pěček Kdo jsem? Jan Pěček Programátor PostgreSQL Jyxo, s.r.o. (Blog.cz) MAFRA, a.s. - Internet Trading
Více7. 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íce7. 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ícePOSTUP 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íceInformač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íceAdministrace 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íceDatabáze I. Přednáška 7
Databáze I Přednáška 7 Objektové rozšíření SQL Objektově relační databáze SQL:1999 objektové rozšíření SQL vztahuje se k objektově relačním databázovým systémům ukládají objekty do relační databáze umožňují
VíceUniverzita Pardubice. Fakulta elektrotechniky a informatiky
Univerzita Pardubice Fakulta elektrotechniky a informatiky Semestrální práce do předmětu IDAS2 Radek Fryšták st32304 / IT 2012 / 2013 Základní charakteristika Téma této smíšené semestrální práce pro předmět
VíceAudit DB. Referát. Vypracoval: Zdeněk Doležal MFF UK Praha 11/5/06
Audit DB Referát Vypracoval: Zdeněk Doležal zdenek.dolezal@gmail.com MFF UK Praha 11/5/06 Obsah 1.Audit databáze...3 Co to je audit db?...3 Kdy a jaký audit bychom měli použít?...3 Udržování informací
VíceInovace 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íceSQL 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íceInformační systém webhostingu
VYSOKÁ ŠKOLA BÁŇSKÁ TECHNICKÁ UNIVERZITA OSTRAVA INFORMAČNÍ SYSTÉMY A DATOVÉ SKLADY Informační systém webhostingu semestrální projekt Analýza Číslo skupiny: 4 Členové: Filip Bartman Jakub Vaněk Jan Šrámek
VíceRezervační systém Tvorba WWW stránek
2012 Rezervační systém Tvorba WWW stránek Vytvoření rezervačního systému pro rezervaci motokár,ubytování a atrakcí Marek Svoboda Motokáry Motobydlo 30.12.2012 Obsah 1.Základní charakteristika... 3 a) Téma
VíceDatabá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Ú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íceSQL - 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íceDatabá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íceObchodní 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íceDatabáze II. 1. přednáška. Helena Palovská palovska@vse.cz
Databáze II 1. přednáška Helena Palovská palovska@vse.cz Program přednášky Úvod Třívrstvá architektura a O-R mapování Zabezpečení dat Role a přístupová práva Úvod Co je databáze Mnoho dat Organizovaných
VíceZápisování dat do databáze
Zápisování dat do databáze Informační a znalostní systémy 1 2 záznamů Pro vkládání záznamů do tabulky- příkaz INSERT INSERT INTO tabulka VALUES ( výčet hodnot záznamu ) záznamů Pro vkládání záznamů do
VíceDatabá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íceFakulta elektrotechniky a informatiky Databázové systémy 2. Leden 2010 souhrn. Červené dobře (nejspíš), modré možná
ZKOUŠKOVÉ TESTY Leden 2010 souhrn Červené dobře (nejspíš), modré možná Pomocí kterého databázového objektu je implementován ATRIBUT z konceptuálního modelu? sloupec referenční omezení index tabulka Omezení
VíceOperá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íceZá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ícePG 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íceMechanismus obarvení řádků browse
Mechanismus obarvení řádků browse Zpracoval: Roman Rajnoha U Mlýna 2305/22, 141 Praha 4 Záběhlice Dne: 27.6.2008 tel.: +420 585 203 370-2 e-mail: info@eso9.cz Revize: Tomáš Urych www.eso9.cz Dne: 25.6.2018
Více4IT218 Databáze. 4IT218 Databáze
4IT218 Databáze Pátá přednáška Dušan Chlapek (katedra informačních technologií, VŠE Praha) 4IT218 Databáze Pátá přednáška SQL - DDL - dokončení SQL - DCL Vlastnosti relačních databázových systémů. Princip
VíceDatabáze SQL SELECT. David Hoksza http://siret.cz/hoksza
Databáze SQL SELECT David Hoksza http://siret.cz/hoksza Osnova Úvod do SQL Základní dotazování v SQL Cvičení základní dotazování v SQL Structured Query Language (SQL) SQL napodobuje jednoduché anglické
VíceDeklarativní IO shrnutí minulé přednášky
Deklarativní IO shrnutí minulé přednášky Existují následující typy omezení: NOT NULL UNIQUE Key PRIMARY KEY FOREIGN KEY CHECK Pro zobrazení všech definic a názvů IO se použije dotaz na pohledy data dictionary
VíceVklá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Ú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íceUniverzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4.
Základy programování 4 - C# - 9. cvičení Radek Janoštík Univerzita Palackého v Olomouci 10.4.2017 Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 10.4.2017 1 / 13 Reakce na
VíceU koly na procvic ení jazyka T-SQL
U koly na procvic ení jazyka T-SQL Lehké Úkol 1 Vytvořte seznam všech zákazníků, seřazený vzestupně podle jména a druhotně podle příjmení. Vraťte všechny sloupce tabulky. SELECT * ORDER BY FirstName, LastName
VíceKód v databázi. RNDr. Ondřej Zýka
Kód v databázi RNDr. Ondřej Zýka 1 Obsah Jazyk Skripty Funkce Procedury Triggery Správa chyb Java, CLR, apod.. Dobré a špatné praktiky 2 PL/SQL Jazyk Oracle Inspirovaný jazykem ADA Objektový Samostatné
VícePopis souboru pro generování reportů *.report
Popis souboru pro generování reportů *.report [Main]... 1 Create... 1 Description... 1 Protect... 1 Nazev... 2 PopisX... 2 PopisY... 2 GRAFDATAOD... 2 GRAFDATADo... 2 GRAFOSAX... 2 TYP_GRAFU... 2 GRAF_VEDLEJSI_OSA...
VíceInformač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íceAbstraktní datové typy Objektový přístup v Oracle
Text pro samostudium náhrada za přednášku a cvičení 6.4.2009 Abstraktní datové typy Objektový přístup v Oracle Motivace Objektový přístup v Oracle je především umožněn díky uživatelem definovaným (abstraktním)
VíceAdministrace Oracle. Jan Šaršon. Audit databáze
Administrace Oracle Jan Šaršon Audit databáze K čemu slouží audit DB? sledování databáze kontrola uživatelů sledování neoprávněných operací kontrola jednotlivých objektů a akcích na nich prováděných Ukládání
VíceDatabá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íceKIV/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íce2. blok Zabezpečení a ochrana dat
2. blok Zabezpečení a ochrana dat Studijní cíl Tento blok je věnován základům zabezpečení a ochrany dat uložených v relačních databázích, tj. uživatelským účtům, systémovým a objektovým oprávněním a rolím.
VíceSada 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íceGymná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íceDatabá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ícePouž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íceInformační systémy 2008/2009. Radim Farana. Obsah. Skripty a dávky. Nastavení aktuální databáze. USE DatabaseName
8 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah MS SQL Server 2005, Jazyk Transact-SQL, syntaxe, proměnné, struktury,
VíceZá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íceDatabázové systémy úvod
Databázové systémy úvod Michal Valenta Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze c Michal Valenta, 2016 BI-DBS, LS 2015/16 https://edux.fit.cvut.cz/courses/bi-dbs/
VíceJaký 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íce10. Architektura klient/server a třívrstvá architektura
10. Architektura klient/server a třívrstvá architektura 10.1. Varianty architektury... 3 10.2. Přínos architektury klient/server a třívrstvé architektury... 5 10.3. Podpora pro rozdělení zátěže v architektuře
VíceEmbedded SQL v C/C++ úvod. Administrace Oracle Kateřina Opočenská
Embedded SQL v C/C++ úvod Administrace Oracle Kateřina Opočenská Motivace potřeba začlenit komunikaci s databází do aplikace v nějakém vyšším programovacím jazyce řešení (na Oracle): a) OCI (Oracle Call
Více10. Architektura klient/server a třívrstvá architektura
10. Architektura klient/server a třívrstvá architektura 10.1. Varianty architektury... 3 10.2. Přínos architektury klient/server a třívrstvé architektury... 5 10.3. Podpora pro rozdělení zátěže v architektuře
Více5. 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íceZranitelnost databáze a ochrana vašich citlivých dat. Michal Lukanič, Database Specialist
Zranitelnost databáze a ochrana vašich citlivých dat Michal Lukanič, Database Specialist IDS / IPS ACS / XML FW DLP / IRM / šifrování Standardně je chráněn pouze perimetr DB admin DMZ Partneři L3-L4 L7+
VíceFIREBIRD relační databázový systém. Tomáš Svoboda
FIREBIRD relační databázový systém Tomáš Svoboda xsvobo13@fi.muni.cz Firebird historie 80. léta - Jim Starkey (DEC) InterBase 1994 - odkoupila firma Borland 2000 - Borland uvolnil zdrojové texty InterBase
VíceZáklady databází. O autorech 17 PRVNÍ ČÁST. KAPITOLA 1 Začínáme 19
3 Obsah Novinky v tomto vydání 10 Význam základních principů 11 Výuka principů nezávisle na databázových produktech 12 Klíčové pojmy, kontrolní otázky, cvičení, případové studie a projekty 12 Software,
VíceZabezpečení proti SQL injection
Zabezpečení proti SQL injection ESO9 intranet a.s. Zpracoval: Tomáš Urych U Mlýna 2305/22, 141 Praha 4 Záběhlice Dne: 19.9.2012 tel.: +420 585 203 370-2 e-mail: info@eso9.cz Revize: Urych Tomáš www.eso9.cz
Více8. Zpracování dotazu. J. Zendulka: Databázové systémy 8 Zpracování dotazu 1
8. Zpracování dotazu 8.1. Podstata optimalizace zpracování dotazu... 2 8.2. Postup optimalizace zpracování dotazu... 3 8.2.1. Implementace spojení... 5 8.2.2. Využití statistik databáze k odhadu ceny dotazu...11
VíceDatabázové a informační systémy Informační systém prodejny nábytku. Jakub Kamrla, KAM087
Databázové a informační systémy Informační systém prodejny nábytku Jakub Kamrla, KAM087 1. část Funkční a nefunkční požadavky 1. K čemu má systém sloužit Jedná se o informační systém pro jednu nejmenovanou
VíceDatabázové systémy a SQL
Databázové systémy a SQL Lekce 2 Daniel Klimeš Autor, Název akce 1 CREATE TABLE Vytvoření tabulky (ORACLE) DDL příkazem v grafickém prostředí CREATE TABLE jmeno ( text VARCHAR2(200), cislo NUMBER(9,1),
VíceDJ2 rekurze v SQL. slajdy k přednášce NDBI001. Jaroslav Pokorný
DJ2 rekurze v SQL slajdy k přednášce NDBI001 Jaroslav Pokorný 1 Obsah 1. Úvod 2. Tvorba rekurzívních dotazů 3. Počítaní v rekurzi 4. Rekurzívní vyhledávání 5. Logické hierarchie 6. Zastavení rekurze 7.
VíceB0M33BDT 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íceCo se stane po jeho vykonání? Vyberte libovolný počet možných odpovědí. Správná nemusí být žádná, ale také mohou být správné všechny.
1. Je spušťen následující anonymní PL/SQL blok: BEGIN INSERT INTO countries (id, name) VALUES ('XA', 'Xanadu'); INSERT INTO countries (id, name) VALUES ('NV','Neverland'); COMMIT; COMMIT; ROLLBACK; END;
VíceObsah. 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íceNÁVRH A TVORBA HUDEBNÍ DATABÁZE
Středoškolská technika 2011 Setkání a prezentace prací středoškolských studentů na ČVUT NÁVRH A TVORBA HUDEBNÍ DATABÁZE Michael Mašek EDUCAnet - gymnázium a střední odborná škola České Budějovice, s.r.o.
VíceUložené procedury Úvod ulehčit správu zabezpečení rychleji
Uložené procedury Úvod Uložená procedura (rutina) je sada příkazů SQL, které jsou uložené na databázovém serveru a vykonává se tak, že je zavolána prostřednictvím dotazu názvem, který jim byl přiřazen
VíceDatabá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íce6. 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íceNastavení propojení s eshopem
Nastavení propojení s eshopem Vytvoření párovacích polí na databázi eshopu! Není nutné upravovat databázi pro použití zkušební verze programu. Tento krok můžete při použití zkušební verze přeskočit. Pro
VíceDatabáze 2011/2012 T-SQL - kurzory, funkce. RNDr.David Hoksza, Ph.D.
Databáze 2011/2012 T-SQL - kurzry, funkce RNDr.David Hksza, Ph.D. http://siret.cz/hksza Osnva T-SQL kurzry T-SQL funkce Cvičení Kurzr Datvá struktura umžňující pracvat s výsledkem dtazu Smyslem kurzru
VíceMySQL sežere vaše data
MySQL sežere vaše data David Karban @davidkarban AWS Certified http://davidkarban.cz/ It s not a bug, it s a feature syndrome Pravděpodobně znáte indexy. Urychlují dotazy. Mohou být řazené, vzestupně i
VíceDATABÁZOVÉ A INFORMAČNÍ SYSTÉMY
Databázové a informační systémy 1. Úvod, PL/SQL I 1/62 DATABÁZOVÉ A INFORMAČNÍ SYSTÉMY Michal Krátký, Radim Bača Katedra informatiky FEI VŠB Technická univerzita Ostrava 2012/2013 Databázové a informační
VíceDatabázové systémy, MS Access. Autor: Ing. Jan Nožička SOŠ a SOU Česká Lípa VY_32_INOVACE_1130_Databázové systémy, MS Access_PWP
Databázové systémy, MS Access Autor: Ing. Jan Nožička SOŠ a SOU Česká Lípa VY_32_INOVACE_1130_Databázové systémy, MS Access_PWP Název školy: Číslo a název projektu: Číslo a název šablony klíčové aktivity:
VíceSII - Informatika. 1. Atribut relace, jehož hodnota jednoznačně určuje prvek v jiné relaci, se nazývá:
SII - Informatika Způsob vyhodnocení: Při vyhodnocení budou za nesprávné odpovědi strhnuty body. 1. Atribut relace, jehož hodnota jednoznačně určuje prvek v jiné relaci, se nazývá: a) sekundární klíč b)
VíceNasazení Object Relation Mapping nástrojů nad legacy datovým modelem
Nasazení Object Relation Mapping nástrojů nad legacy datovým modelem 1 Ondřej Berger, Pavel Janečka, 2 Lukáš Černovský 1 Univerzita Hradec Králové Fakulta informatiky a managementu KIKM Hradecká 1249/6,
VíceDatabázové systémy. 9. přednáška
Databázové systémy 9. přednáška Procedury Jsou pojmenovaným blokem PL/SQL kódu (i posloupnost SQL příkazů ohraničena BEGIN END je PL/SQL kód) Založí se příkazem CREATE OR REPLACE PROCEDURE jméno (parametry)
VíceVyužití XML v DB aplikacích
Využití XML v DB aplikacích Michal Kopecký Výběr ze slajdů k 7. přednášce předmětu Databázové Aplikace (DBI026) na MFF UK Komunikace aplikace s okolím Databázová aplikace potřebuje často komunikovat s
VíceZá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íceOracle 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íceTento blok je věnován vytváření uživatelských balíků funkcí v jazyce PL/SQL a použití systémových balíků. 2-3 hodiny
8. blok Balíky. Systémové balíky. Studijní cíl Tento blok je věnován vytváření uživatelských balíků funkcí v jazyce PL/SQL a použití systémových balíků. Doba nutná k nastudování 2-3 hodiny Průvodce studiem
VíceTvorba informačních systémů
Tvorba informačních systémů Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2007/2008 c 2005 2008 Michal Krátký Tvorba informačních systémů 1/39 Konceptuální
Více