Obsah - CPress
Transkript
Obsah Část I Hlavní systém databáze 1. 2. 3. 4. Možnosti architektury databáze Oracle Database 11g Instalujeme a zakládáme databázi Oracle Database 11g Aktualizujeme na verzi Oracle Database 11g Plánování aplikací Oracle – přístupy, rizika a standardy 33 41 51 61 Část II SQL a SQL*Plus 5. Základy jazyka SQL 6. Jednoduché zprávy a příkazy v nástroji SQL*Plus 7. Informace o textu – jak je získat a upravovat 8. Vyhledávání regulárních výrazů 9. Hrátky s čísly 10. Data minulá, aktuální a doba mezi nimi 11. Převáděcí a transformační funkce 12. Seskupování 13. Když jeden dotaz závisí na jiném 14. Několik komplexních řešení 15. Úprava dat: vkládání, aktualizace, slučování a odstraňování 16. Funkce DECODE a CASE: if, then a else v SQL 17. Vytváření a správa tabulek, zobrazení, indexů, clusterů a sekvencí 18. Rozdělování tabulky 19. Základy bezpečnosti Kniha K1689.indb 3 97 121 143 167 181 201 221 233 245 261 275 293 307 337 345 11.3.2010 12:53:37 4 Stručný obsah Část III Za hranicemi základů 20. Pokročilé zabezpečení – virtuální soukromé databáze 21. Pokročilé zabezpečení – transparentní šifrování dat 22. Práce s tabulkovými prostory 23. Načítání dat s programem SQL*Loader 24. Nástroje Data Pump Export a Data Pump Import 25. Přístup ke vzdáleným datům 26. Použití materializovaných pohledů 27. Oracle Text ve vyhledávání textu 28. Práce s externími tabulkami 29. Technologie Flashback Query 30. Okamžitá obnova tabulek a databází 31. Přehrávání příkazů SQL 369 381 389 399 413 429 441 463 479 495 505 513 Část IV PL/SQL 32. Úvod do PL/SQL 33. Aktualizace online aplikací 34. Aktivační události 35. Procedury, funkce a balíky 36. Využití Native Dynamic SQL a DBMS_SQL 37. Ladění PL/SQL kódu 525 545 559 579 597 605 Část V Objektově-relační databáze 38. Implementace objektových typů, objektových pohledů a metod 39. Kolekce (vnořené tabulky a pole o proměnné délce) 40. Využití velkých objektů 41. Pokročilé objektově orientované koncepty Kniha K1689.indb 4 619 633 647 673 11.3.2010 12:53:37 Stručný obsah 5 Část VI Oracle a Java 42. Úvod do jazyka Java 43. JDBC 44. Uložené procedury jazyka Java 691 707 715 Část VII Stopařův průvodce 45. Stopařův průvodce po datovém slovníku systému Oracle 46. Stopařův průvodce po ladění aplikací a SQL 47. SQL Result Cache a Client-Side Query Cache 48. Ladění aplikace – rozbor vzorových problémů 49. Pokročilá architektura databáze – Database Vault, Content Database a Record Database 50. Oracle Real Application Clusters 51. Stopařův průvodce po správě databáze 52. Stopařův průvodce po XML v systému Oracle 727 777 825 837 849 863 873 901 Část VIII Abecední seznam příkazů Kniha K1689.indb 5 915 11.3.2010 12:53:37 Kniha K1689.indb 6 11.3.2010 12:53:37 Obsah část I Hlavní systém databáze KAPITOLA 1 Možnosti architektury databáze Oracle Database 11g Databáze a instance Uvnitř databáze Ukládání dat Hlídání dat Programové struktury Volba architektury a možnosti 33 34 35 36 38 38 39 KAPITOLA 2 Instalujeme a zakládáme databázi Oracle Database 11g Přehled licenčních a instalačních možností Použití nástroje OUI při instalaci softwaru Oracle 41 42 43 KAPITOLA 3 Aktualizujeme na verzi Oracle Database 11g 51 Volba aktualizační metody Než přistoupíte k aktualizaci Spuštění nástroje Pre-Upgrade Information Tool Práce s nástrojem Database Upgrade Assistant Provádění ruční přímé aktualizace Exportování a importování 52 53 54 55 56 57 Které nástroje pro export a import dat použít? Aktualizační proces Metoda kopírování dat Po aktualizaci Kniha K1689.indb 7 57 57 58 59 11.3.2010 12:53:38 8 Obsah KAPITOLA 4 Plánování aplikací Oracle – přístupy, rizika a standardy Kooperativní přístup Každý uchovává nějaká „data“ Známý jazyk Oraclu 62 63 64 Tabulka s informacemi SQL Jednoduchý dotaz Proč nazýváme tabulku „relační“ 64 65 66 67 Několik běžných, každodenních příkladů Jaká jsou rizika? Jak je důležitý čerstvý náhled 69 70 71 Změna prostředí Kódy, zkratky a standardy pojmenovávání 71 72 Jak se vyhnout zmatku Normalizace České názvy tabulek a sloupců Slova místo dat Velká písmena v názvech a datech Normalizace názvů V dobrém návrhu je kousek člověka Co od aplikace očekáváme Hrubý náčrt úloh Porozumění datům Modely atomických dat Atomický firemní model Firemní model Vkládání dat Dotazy a zprávy Normalizujeme názvy objektů Kniha K1689.indb 8 61 73 74 79 80 80 81 82 82 84 86 87 88 88 88 89 89 Integrita pojmenovávání v úrovních Cizí klíče Názvy v jednotném čísle Stručnost Thesaurus názvů objektů 90 90 91 91 92 Inteligentní klíče a hodnoty sloupce 10 přikázání 92 93 11.3.2010 12:53:38 Obsah 9 Část II SQL a SQL*Plus KAPITOLA 5 Základy jazyka SQL 97 Styl Vytváříme tabulku NEWSPAPER Výběr dat v tabulce pomocí SQL Příkazy select, from, where a order by Logika a hodnota 98 99 100 103 105 Testování jednoduché hodnoty Příkaz LIKE Jednoduché testování seznamu hodnot 105 108 110 Další použití příkazu where: Poddotazy 112 Jednoduché hodnoty v poddotazu Seznamy hodnot v poddotazu Kombinování tabulek Vytváříme pohled Rozšíření pohledu 113 114 115 117 119 KAPITOLA 6 Jednoduché zprávy a příkazy v nástroji SQL*Plus Sestavujeme jednoduchou zprávu Příkaz remark Příkaz set headstep Příkazy ttitle a btitle Příkaz column Příkaz break on Příkaz compute avg Příkaz set linesize Příkaz set pagesize Příkaz set newpage Příkaz spool /**/ Přesněji o hlavičce sloupce Další funkce Editor příkazového řádku Příkaz set pause Příkaz save Příkaz store Provádění úprav Kniha K1689.indb 9 121 123 124 126 126 127 128 128 129 130 130 130 132 132 133 133 136 136 136 136 11.3.2010 12:53:38 10 Obsah Příkaz host Přidávání příkazů SQL*Plus Příkaz start 137 138 138 Kontrola prostředí SQL*Plus Stavební kameny 139 140 KAPITOLA 7 Informace o textu – jak je získat a upravovat 143 Datové typy Co je řetězec? Notace Zřetězení (||) Jak vyjímat a vkládat řetězce 143 144 145 146 147 Funkce RPAD a LPAD Funkce LTRIM, RTRIM a TRIM Kombinace dvou funkcí Používáme funkci TRIM Ještě jedna funkce Funkce LOWER, UPPER a INITCAP Funkce LENGTH Funkce SUBSTR Funkce INSTR Funkce ASCII a CHR 148 149 150 152 152 153 154 155 157 161 Klauzule order by a where ve spojení s funkcemi pro práci s řetězci Funkce SOUNDEX Podpora národních jazyků Podpora regulárních výrazů Shrnutí 162 163 165 165 165 KAPITOLA 8 Vyhledávání regulárních výrazů Vyhledávací řetězce Funkce REGEXP_SUBSTR Funkce REGEXP_INSTR Funkce REGEXP_LIKE Funkce REPLACE a REGEXP_REPLACE Funkce REGEXP_COUNT 167 167 171 172 173 174 178 KAPITOLA 9 Hrátky s čísly Tři třídy číselných funkcí Notace Kniha K1689.indb 10 181 181 182 11.3.2010 12:53:38 Obsah Funkce pro práci s jednoduchými hodnotami Sčítání (+), odčítání (-), násobení (*) a dělení (/) NULL NVL – náhrada hodnoty NULL Funkce ABS – absolutní hodnota Funkce CEIL Funkce FLOOR Funkce MOD Funkce POWER Funkce SQRT – druhá odmocnina Funkce EXP, LN a LOG Funkce ROUND a TRUNC Funkce SIGN Funkce SIN, SINH, COS, COSH, TAN, TANH, ACOS, ATAN, ATAN2 a ASIN Agregační funkce Hodnoty NULL a funkce pro práci se skupinami hodnot Příklady funkcí pro práci s jednou hodnotou a skupinou hodnot Funkce AVG, COUNT, MAX, MIN a SUM Kombinace funkcí pro práci s jednou hodnotou a skupinou hodnot Funkce STDDEV a VARIANCE Funkce DISTINCT a skupinové funkce Seznamové funkce Hledání řádků pomocí funkcí MAX a MIN Závorky a priorita Shrnutí 11 182 183 183 184 185 185 186 186 186 187 187 187 189 189 189 190 191 192 192 194 194 196 197 198 199 KAPITOLA 10 Data minulá, aktuální a doba mezi nimi Datová aritmetika 201 Funkce SYSDATE, CURRENT_DATE a SYSTIMESTAMP Rozdíl mezi dvěma daty Přičítání měsíců Odečítání měsíců Funkce GREATEST a LEAST Funkce NEXT_DAY Funkce LAST_DAY Funkce MONTHS_BETWEEN a dvě data Kombinování datových funkcí 202 202 203 204 204 205 206 207 207 Funkce ROUND a TRUNC ve výpočtech dat Formátování pomocí funkcí TO_DATE a TO_CHAR 208 209 Nejběžnější chyba při práci s funkcí TO_CHAR Funkce NEW_TIME: mezi časovými pásmy Kniha K1689.indb 11 201 213 213 11.3.2010 12:53:38 12 Obsah Výpočty funkce TO_DATE Data v klauzulích where Jak zacházet s více stoletími Použití funkce EXTRACT Použití datových typů TIMESTAMP 214 216 217 218 218 KAPITOLA 11 Převáděcí a transformační funkce Základní převáděcí funkce Automatická konverze datových typů S automatickým převodem opatrně Specializované převodní funkce Transformační funkce Funkce TRANSLATE Funkce DECODE Shrnutí 221 223 225 228 228 229 229 230 231 KAPITOLA 12 Seskupování Použití klauzulí group by a having Přidání klauzule order by Pořadí zpracování Zobrazení skupin Přejmenovávání sloupců aliasy Mocná zobrazení skupin Zobrazení a klauzule order by Logika klauzule having Klauzule order by se sloupci a skupinovými funkcemi Sloučené sloupce Další seskupovací možnosti 233 233 235 236 237 238 239 241 241 243 244 244 KAPITOLA 13 Když jeden dotaz závisí na jiném Pokročilé poddotazy Korelované poddotazy Koordinace logických testů Operátor EXISTS a jeho korelovaný poddotaz Vnější spojení Syntaxe vnějších spojení před Oraclem9i Aktuální syntaxe vnějších spojení Nahrazení podmínky NOT IN ve vnějším spojení Nahrazení podmínky NOT IN podmínkou NOT EXISTS Kniha K1689.indb 12 245 245 246 247 248 250 250 252 253 254 11.3.2010 12:53:39 Obsah Přirozená a vnitřní spojení Klauzule UNION, INTERSECT a MINUS Poddotazy IN Omezení operátorů UNION, INTERSECT a MINUS 13 255 256 259 259 KAPITOLA 14 Několik komplexních řešení Složitá seskupení Dočasné tabulky Funkce ROLLUP, GROUPING a CUBE Rodokmeny a klauzule connect by Vyjímání jednotlivců a větví Cesta ke kořenům Základní pravidla 261 261 263 263 267 270 271 273 KAPITOLA 15 Úprava dat: vkládání, aktualizace, slučování a odstraňování Vkládání 275 275 Vkládání času Příkazy insert a select Vylepšení vkládání pomocí příznaku APPEND 276 276 278 Příkazy rollback, commit a autocommit 278 Uložené body Implicitní potvrzení Automatické vrácení změn Vkládání do více tabulek najednou Odstraňování řádků Aktualizace řádků Aktualizace s vnořeným příkazem select Aktualizace a hodnota NULL Použití příkazu merge Správa chyb 279 280 280 280 284 285 286 287 288 290 KAPITOLA 16 Funkce DECODE a CASE: if, then a else v SQL if, then, else Nahrazování hodnot pomocí funkce DECODE Funkce DECODE vnořená do jiné funkce DECODE Větší a menší ve funkci DECODE Funkce CASE Operátor PIVOT Kniha K1689.indb 13 293 293 296 297 300 301 304 11.3.2010 12:53:39 14 Obsah KAPITOLA 17 Vytváření a správa tabulek, zobrazení, indexů, clusterů a sekvencí Vytváření tabulky Šíře znaků a přesnost datového typu NUMBER Zaokrouhlování během vkládání Omezení příkazu create table Designujeme jmenný prostor indexu Omezení pojmenovávání Odstraňování tabulek Pozměňování tabulek Pravidla pro vkládání a úpravu sloupců Vytváření tabulky pouze pro čtení Změna aktivně používaných tabulek Vytváříme virtuální sloupce Odstranění sloupce Vytváření tabulky z jiné tabulky Vytváření indexově orientované tabulky Vytváříme zobrazení Stabilita zobrazení Klauzule order by v zobrazení Vytváření zobrazení pouze pro čtení Indexy Vytváření indexu Vynucení jedinečnosti Vytváření jedinečného indexu Vytváření bitmapového indexu Kdy je dobré index vytvořit Vytváření neviditelných indexů Různorodost indexovaných sloupců Kolik indexů má na tabulce být Umístění indexu v databázi Obnovení indexu Funkční indexy Clustery Sekvence Kniha K1689.indb 14 307 307 308 310 312 313 314 315 316 318 319 319 320 320 321 323 324 325 326 326 327 328 328 328 329 330 330 331 331 332 333 333 334 335 11.3.2010 12:53:39 Obsah 15 KAPITOLA 18 Rozdělování tabulky Rozdělování tabulky Dělení podle seznamu Vytváříme pododdíly Vytváříme oddíly podle rozsahu a intervalu Indexování oddílů Správa rozdělených tabulek 337 337 340 340 341 342 343 KAPITOLA 19 Základy bezpečnosti Uživatelé, role a oprávnění Vytváření uživatele Správa hesel Standardní role Formát příkazu grant Odejmutí oprávnění Jaká oprávnění mohou uživatelé udělovat Připojení k jinému uživateli prostřednictvím příkazu connect Vytváření synonym Práce s neudělenými oprávněními Předávání oprávnění Vytváříme roli Přidání oprávnění do role Udělování role jiné roli Přidělování role uživatelům Heslo role Odstranění hesla z role Aktivace a deaktivace rolí Odebírání oprávnění z role Odstranění role Přidělování role UPDATE konkrétním sloupcům Odebírání objektových oprávnění Zabezpečení pomocí pseudosloupce User Přidělování přístupových práv všem Přidělování omezených systémových prostředků Kniha K1689.indb 15 345 345 346 346 350 351 351 352 354 357 357 357 359 359 359 360 360 361 361 362 362 363 363 363 365 366 11.3.2010 12:53:39 16 Obsah Část III Za hranicemi základů KAPITOLA 20 Pokročilé zabezpečení – virtuální soukromé databáze 369 Počáteční konfigurace Vytváříme aplikační kontext Vytváříme aktivační událost prováděnou při přihlášení Vytváříme pravidla zabezpečení Aplikace bezpečnostních pravidel na tabulky Test databáze VPD Jak implementovat databázi VPD na úrovni sloupců Jak deaktivovat databázi VPD Práce se skupinami pravidel 370 371 372 373 374 375 376 377 378 KAPITOLA 21 Pokročilé zabezpečení – transparentní šifrování dat 381 Transparentní šifrování dat ve sloupcích 381 Nastavení Další nastavení databází RAC Otevírání a zavírání elektronické peněženky Šifrování a dešifrování sloupců 382 383 383 384 Šifrování tabulkového prostoru Nastavení Vytvoření šifrovaného tabulkového prostoru 385 385 386 KAPITOLA 22 Práce s tabulkovými prostory Tabulkové prostory a struktura databáze Obsah tabulkového prostoru Odpadkový koš v tabulkovém prostoru Tabulkové prostory pouze pro čtení Tabulkové prostory v režimu nologging Dočasné tabulkové prostory Tabulkové prostory pro systémem řízenou obnovu Tabulkové prostory typu bigfile Šifrované tabulkové prostory Okamžitá obnova databáze Přesun tabulkových prostorů Kniha K1689.indb 16 389 389 390 392 392 393 394 394 394 395 395 396 11.3.2010 12:53:39 Obsah Plánování použití tabulkových prostorů Samostatné aktivní a statické tabulky Samostatné indexy a tabulky Samostatné velké a malé objekty Oddělení tabulek aplikace od klíčových objektů 17 396 396 397 397 397 KAPITOLA 23 Načítání dat s programem SQL*Loader Kontrolní soubor Načítání dat s proměnlivou délkou Začátek načítání Logické a fyzické záznamy Poznámky k syntaxi kontrolního souboru Správa načítání dat Opakovaná načítání dat Ladění načítání dat Přímé načítání Další funkce 399 400 401 401 405 406 408 408 410 411 412 KAPITOLA 24 Nástroje Data Pump Export a Data Pump Import 413 Vytváření adresáře Funkce nástroje Data Pump Export Spuštění úlohy v nástroji Data Pump Export 413 414 417 Zastavování a opětovné spouštění běžících úloh Export z jiné databáze Příkazy EXCLUDE, INCLUDE a QUERY 418 419 419 Možnosti nástroje Data Pump Import Spouštíme úlohu nástroje Data Pump Import 421 424 Pozastavování a spouštění běžící úlohy Parametry EXCLUDE, INCLUDE a QUERY Transformace importovaných objektů Vytváření SQL 425 426 426 426 KAPITOLA 25 Přístup ke vzdáleným datům Databázové propojení Jak databázové propojení funguje Databázové propojení a vzdálené dotazy Databázové propojení při práci se synonymy a zobrazeními Kniha K1689.indb 17 429 429 429 430 431 11.3.2010 12:53:40 18 Obsah Databázové propojení a vzdálené aktualizace Syntaxe databázového propojení Synonyma a průhlednost umístění Pseudosloupec User v zobrazeních 432 433 436 437 KAPITOLA 26 Použití materializovaných pohledů Funkce Vyžadovaná systémová oprávnění Nezbytná oprávnění k tabulce Pouze pro čtení versus aktualizace Syntaxe příkazu create materialized view Typy materializovaných pohledů Materializované pohledy založené na primárním klíči versus RowID Dříve sestavené tabulky Indexování tabulek materializovaných pohledů Změna provádění dotazu prostřednictvím materializovaného pohledu Balík DBMS_ADVISOR Obnovování materializovaných pohledů Jaká obnovení lze provádět? Rychlé obnovení pomocí klauzule CONSIDER FRESH Automatická obnovení Manuální obnovení Syntaxe příkazu create materialized view log Úprava materializovaných pohledů a protokolů Odstraňování materializovaných pohledů a protokolů 441 441 442 443 443 444 447 448 448 449 449 451 454 454 457 457 458 459 461 461 KAPITOLA 27 Oracle Text ve vyhledávání textu Vkládání textu do databáze Textové dotazy a indexy Textové dotazy Možné výrazy v textovém dotazu Hledání zcela shodného slova Hledání více zcela shodných slov Hledání zcela shodné fráze Hledání slov nacházejících se blízko sebe Vyhledávání se zástupnými symboly Hledání slov se stejným slovním kmenem Přibližné vyhledávání Hledání podobně znějících slov Kniha K1689.indb 18 463 463 464 465 466 466 467 470 471 472 473 473 474 11.3.2010 12:53:40 Obsah Použití operátoru ABOUT Synchronizace indexu Indexové sady 19 476 476 477 KAPITOLA 28 Práce s externími tabulkami 479 Přístup k externím datům Vytváření externí tabulky 479 480 Možnosti při vytváření externí tabulky Zaplňování externích tabulek při vytváření Úprava externích tabulek Přístupové parametry Klauzule add column Klauzule default directory Klauzule drop column Klauzule location Klauzule modify column Klauzule parallel Klauzule project column Klauzule reject limit Klauzule rename to Omezení, výhody a potenciální využití externích tabulek 483 488 489 490 490 490 490 490 490 490 491 491 491 491 KAPITOLA 29 Technologie Flashback Query Příklad dotazu flashback s časovým údajem Ukládání dat Příklad dotazu flashback založeného na SCN Co když dotaz flashback selže? Které číslo SCN je asociováno se všemi řádky? Technologie Flashback Version Query Plánování okamžitého obnovení 495 496 497 498 499 500 501 503 KAPITOLA 30 Okamžitá obnova tabulek a databází Příkaz flashback table Potřebná oprávnění Obnova odstraněných tabulek Aktivace a deaktivace odpadkového koše Obnova na základě čísla SCN a časového razítka Indexy a statistiky Příkaz flashback database Kniha K1689.indb 19 505 505 505 506 507 508 509 509 11.3.2010 12:53:40 20 Obsah KAPITOLA 31 Přehrávání příkazů SQL 513 Vysokoúrovňové nastavení 513 Izolace a odkazy Vytváříme adresář pro pracovní zátěž Zachytávání pracovního zatížení 513 514 514 Definice filtrů Spuštění zachytávání Zastavení zachytávání Export dat AWR 515 516 517 517 Zpracování pracovní zátěže Přehrání pracovní zátěže 517 518 Ovládání a spouštění klientů opětovného přehrávání Spuštění a běh přehrávání Export dat AWR 518 519 521 Část IV PL/SQL KAPITOLA 32 Úvod do PL/SQL Přehled jazyka PL/SQL Deklarace Spustitelné příkazy Podmínková logika Smyčky Příkazy CASE Správa výjimek 525 525 526 529 530 532 540 541 KAPITOLA 33 Aktualizace online aplikací Databáze s vysokou dostupností Architektura nástroje Oracle Data Guard Zápis nastavení záložní databáze Správa rolí – přepnutí a převzetí služeb při selhání Drobné změny DDL Vytváříme virtuální sloupce Úpravy v aktivně užívaných tabulkách Vkládání sloupců NOT NULL Přeskupení objektů za běhu Odstranění sloupce Kniha K1689.indb 20 545 545 546 547 550 553 553 554 554 555 558 11.3.2010 12:53:40 Obsah 21 KAPITOLA 34 Aktivační události Potřebná systémová oprávnění Potřebná oprávnění k tabulce Typy aktivačních událostí Aktivační události na úrovni řádků Aktivační události na úrovni příkazu Aktivační události BEFORE a AFTER Aktivační události INSTEAD OF Aktivační události na úrovni schématu Aktivační události na úrovni databáze Složené aktivační události Syntaxe aktivační události Kombinování typů aktivačních událostí na úrovni DML Nastavení vložených hodnot Údržba duplikovaných dat Přizpůsobení chybových podmínek Volání procedur v rámci aktivačních událostí Pojmenovávání aktivačních událostí Vytváření aktivačních událostí DDL Spouštění databázových událostí Vytváření složených aktivačních událostí Aktivace a deaktivace aktivačních událostí Nahrazení aktivačních událostí Odstranění aktivační události 559 559 560 560 560 560 561 561 562 562 562 562 564 566 566 568 570 570 570 575 575 577 578 578 KAPITOLA 35 Procedury, funkce a balíky Potřebná systémová oprávnění Potřebná oprávnění k tabulce Procedury versus funkce Procedury versus balíky Syntaxe příkazu create procedure Syntaxe příkazu create function Odkazy na vzdálené tabulky v procedurách Ladění procedur Vytváření vlastních funkcí Přizpůsobení chybových podmínek Pojmenovávání procedur a funkcí Syntaxe příkazu create package Kniha K1689.indb 21 579 580 581 581 582 582 584 586 587 588 589 591 591 11.3.2010 12:53:41 22 Obsah Zobrazení zdrojového kódu procedurálních objektů Kompilování procedur, funkcí a balíků Nahrazení procedur, funkcí a balíků Odstranění procedur, funkcí a balíků 594 595 595 596 KAPITOLA 36 Využití Native Dynamic SQL a DBMS_SQL Příkaz EXECUTE IMMEDIATE Používání bind proměnných Používání DBMS_SQL 597 597 599 600 OPEN_CURSOR PARSE BIND_VARIABLE a BIND_ARRAY EXECUTE DEFINE_COLUMN FETCH_ROWS, EXECUTE_AND_FETCH a COLUMN_VALUE CLOSE CURSOR 601 601 601 602 602 602 603 KAPITOLA 37 Ladění PL/SQL kódu 605 Ladění SQL Postup ladění PL/SQL kódu Identifikace problémů pomocí balíku DBMS_PROFILER Využití nástrojů PL/SQL určených k provádění hromadných operací forall bulk collect 605 605 607 611 611 613 Část V Objektově-relační databáze KAPITOLA 38 Implementace objektových typů, objektových pohledů a metod Práce s objektovými typy 619 619 Zabezpečení objektových typů Indexování atributů objektových typů 620 623 Implementace objektových pohledů 624 Manipulace s daty prostřednictvím objektových pohledů Využití triggerů INSTEAD OF Kniha K1689.indb 22 627 628 11.3.2010 12:53:41 Obsah Metody Syntaxe vytváření metod Správa metod 23 630 630 632 KAPITOLA 39 Kolekce (vnořené tabulky a pole o proměnné délce) Pole o proměnné délce Vytvoření pole o proměnné délce Popis pole o proměnné délce Vkládání záznamů do pole o proměnné délce Výběr dat z polí o proměnné délce Vnořené tabulky Specifikace tabulkových prostorů pro vnořené tabulky Vkládání záznamů do vnořené tabulky Práce s vnořenými tabulkami Další funkce určené pro práci s vnořenými tabulkami a poli o proměnné délce Správa vnořených tabulek a polí o proměnné délce Variabilita kolekcí Umístění dat 633 633 633 634 635 636 639 640 641 642 644 644 645 645 KAPITOLA 40 Využití velkých objektů Dostupné datové typy Specifikace úložišť dat typů LOB Výběr a manipulace s hodnotami typů LOB Inicializace hodnot Příkaz insert ve vnořených dotazech Aktualizace hodnot typů LOB Manipulace s hodnotami typů LOB prostřednictvím funkcí pro zpracování řetězců Manipulace s hodnotami typu LOB prostřednictvím balíku DBMS_LOB Mazání hodnot typu LOB 647 647 649 651 653 654 655 655 656 672 KAPITOLA 41 Pokročilé objektově orientované koncepty Kniha K1689.indb 23 673 Řádkové objekty versus sloupcové objekty Objektové tabulky a identifikační hodnoty objektů (OID) 673 674 Vkládání řádků do objektových tabulek Výběr hodnot z objektových tabulek Aktualizace a mazání hodnot uložených v objektových tabulkách Funkce REF 675 676 676 677 11.3.2010 12:53:41 24 Obsah Funkce DEREF Funkce VALUE Neplatné ukazatele 678 680 681 Objektové pohledy s ukazateli typu REF Stručný přehled objektových pohledů Objektové pohledy pracující s ukazateli (referencemi) Objektový PL/SQL Objekty v databázi 682 682 683 686 688 Část VI Oracle a Java KAPITOLA 42 Úvod do jazyka Java Java vs. PL/SQL: stručný přehled Začínáme Deklarace Příkazy Podmínková logika Cykly Ošetření výjimek Vyhrazená klíčová slova Třídy 691 692 692 693 693 695 698 700 701 702 KAPITOLA 43 JDBC 707 Využití JDBC tříd Využití JDBC k datové manipulaci 708 711 KAPITOLA 44 Uložené procedury jazyka Java Načtení třídy do databáze Přístup k třídě Přímé volání uložených Java procedur Kdy provádět příkazy Kniha K1689.indb 24 715 717 721 723 723 11.3.2010 12:53:41 Obsah 25 Část VII Stopařův průvodce KAPITOLA 45 Stopařův průvodce po datovém slovníku systému Oracle 727 Poznámka o názvosloví Nové pohledy ve verzi Oracle Database 11g Cestovní mapy pohledů DICTIONARY (DICT) a DICT_COLUMNS Objekty, ze kterých můžete vybírat (select) záznamy: tabulky (a sloupce), pohledy, synonyma a sekvence 728 728 732 Katalogy: USER_CATALOG (CAT) Objekty: USER_OBJECTS (OBJ) Tabulky: USER_TABLES (TABS) Sloupce: USER_TAB_COLUMNS (COLS) Pohledy: USER_VIEWS Synonyma: USER_SYNONYMS (SYN) Sekvence: USER_SEQUENCES (SEQ) Koš: USER_RECYCLEBIN a DBA_RECYCLEBIN Omezení a komentáře Omezení: USER_CONSTRAINTS Omezení sloupců: USER_CONS_COLUMNS Výjimky v omezeních: EXCEPTIONS Komentáře k tabulkám: USER_TAB_COMMENTS Komentáře ke sloupcům: USER_COL_COMMENTS Indexy a clustery Indexy: USER_INDEXES (IND) Indexované sloupce: USER_IND_COLUMNS Clustery: USER_CLUSTERS (CLU) Sloupce clusterů: USER_CLU_COLUMNS Abstraktní datové typy a velké objekty (LOBy) Abstraktní datové typy: USER_TYPES Velké objekty (LOBy): USER_LOBS Databázové linky a materializované pohledy Databázové linky: USER_DB_LINKS Materializované pohledy: USER_MVIEWS Logy materializovaných pohledů: USER_MVIEW_LOGS Triggery, procedury, funkce a balíky Triggery: USER_TRIGGERS Procedury, funkce a balíky: USER_SOURCE Kniha K1689.indb 25 734 734 734 735 738 739 742 742 743 743 743 745 745 747 747 748 748 750 751 752 752 752 755 755 755 756 758 758 759 759 11.3.2010 12:53:41 26 Obsah Dimenze Alokace paměti a způsob jejího využití, včetně partition a subpartition Tabulkové prostory: USER_TABLESPACES Limity pro využití paměti: USER_TS_QUOTAS Segmenty a extenty: USER_SEGMENTS a USER_EXTENTS Partition a subpartition Volná paměť: USER_FREE_SPACE Uživatelé a práva Uživatelé USER_USERS Omezení prostředků: USER_RESOURCE_LIMITS Tabulková práva: USER_TAB_PRIVS Sloupcová práva: USER_COL_PRIVS Systémová práva: USER_SYS_PRIVS Role Provádění auditu Různé Monitoring CHAINED_ROWS PLAN_TABLE Vzájemné závislosti: USER_DEPENDENCIES a IDEPTREE Pohledy určené pouze správcům databáze Oracle Label Security Pohledy obsahující informace o přímém načítání prostřednictvím utility SQL*Loader Pohledy obsahující informace o národní podpoře (Globalization Support) Knihovny Heterogenní služby Objekty typu indextype a operátory Outlines (uložené prováděcí plány) Advisors (pomocné služby pro ladění databáze) Schedulers (schedulery) 761 762 762 763 763 764 767 767 767 767 768 768 769 769 770 771 771 772 772 773 773 773 773 774 774 774 774 775 775 775 KAPITOLA 46 Stopařův průvodce po ladění aplikací a SQL Nové nástroje a vlastnosti systému Oracle Database 11g určené k podpoře ladění aplikací Nové nástroje a vlastnosti systému Oracle Database 11g určené k podpoře ladění aplikací Kniha K1689.indb 26 777 777 778 11.3.2010 12:53:41 Obsah Ladění – správný postup 27 779 Dělejte vždy jen to, co musíte Snažte se vždy všechno dělat co nejjednodušším způsobem Řekněte databázi to, co potřebuje vědět Zajistěte maximální průchodnost prostředí Rozdělte a ovládněte svá data Testujte správným způsobem 780 783 784 785 787 788 Generování a interpretace prováděcích plánů dotazů 790 Použití příkazu set autotrace on Použití příkazu explain plan Nejdůležitější operace v prováděcích plánech TABLE ACCESS FULL TABLE ACCESS BY INDEX ROWID Příbuzné informace pro optimalizátor Operace využívající indexy Kdy se indexy používají Operace s množinami dat Operace provádějící spojení Jakým způsobem provádí Oracle spojení více než dvou tabulek najednou Paralelismus a problémy s cache Implementace uložených prováděcích plánů Přehled 790 795 796 796 796 797 797 799 805 812 813 820 821 823 KAPITOLA 47 SQL Result Cache a Client-Side Query Cache Nastavení příslušných parametrů databáze pro SQL Result Cache Balík DBMS_RESULT_CACHE Pohledy datového slovníku obsahující informace o SQL Result Cache Další informace o SQL Result Cache Client Query Cache rozhraní Oracle Call (OCI) Omezení Client Query Cache rozhraní Oracle Call (OCI) 825 832 833 834 834 835 836 KAPITOLA 48 Ladění aplikace – rozbor vzorových problémů 1. problém: čekání, čekání a zase čekání 2. problém: dotazy, které zásadním způsobem ovlivňují výkon aplikace Využití trasovací události 10053 3. problém: dlouhotrvající dávkové operace Kniha K1689.indb 27 837 837 841 843 845 11.3.2010 12:53:42 28 Obsah KAPITOLA 49 Pokročilá architektura databáze – Database Vault, Content Database a Record Database Oracle Database Vault Nové koncepty systému Oracle Database Vault Deaktivace Oracle Database Vault Aktivace Oracle Database Vault Poznámky k instalaci Oracle Database Vault Oracle Content Database Suite 849 849 850 851 852 853 856 Repositář Správa dokumentů Uživatelské zabezpečení 857 857 858 Oracle Records Database 859 KAPITOLA 50 Oracle Real Application Clusters Příprava na instalaci Instalace RAC Ukládání dat Inicializační parametry Spouštění a zastavování RAC instancí Transparent Application Failover Přidávání uzlů a instancí do clusteru 863 863 864 865 866 868 870 871 KAPITOLA 51 Stopařův průvodce po správě databáze Vytvoření databáze Použití sady nástrojů Oracle Enterprise Manager Spuštění a zastavení databáze Nastavení velikosti oblastí paměti a jejich správa 873 873 874 875 876 Soubor s inicializačními parametry databáze 878 Alokování a správa paměti pro objekty 878 Důsledky použití klauzule storage Segmenty tabulek Segmenty indexů Undo operace spravované systémem Dočasné segmenty Volné místo Nastavení velikosti objektů databáze Kniha K1689.indb 28 879 882 882 882 884 885 886 11.3.2010 12:53:42 Obsah Monitoring „Undo“ tabulkových prostorů Automatická správa ukládání dat Nastavení ASM 29 888 889 889 Správa místa v segmentech Transportování tabulkových prostorů Generování transportovatelných tabulkových prostorů Zapojení transportovatelné skupiny tabulkových prostorů do cílové databáze Zálohování 890 891 892 893 894 Data Pump Export a Import Offline zálohování Online zálohování Recovery Manager 894 895 896 899 Kde najdete další informace 900 KAPITOLA 52 Stopařův průvodce po XML v systému Oracle Definice typu dokumentů, prvků a atributů XML schéma Výběr, vkládání, aktualizace a mazání XML hodnot prostřednictvím nástroje XSU Vkládání, aktualizace a mazání prostřednictvím XSU XSU a Java Nastavení způsobu zpracování dotazu XMLType Další vlastnosti a komponenty 901 901 905 907 909 910 911 912 913 část VIII Abecední seznam příkazů Rejstřík Kniha K1689.indb 29 915 1349 11.3.2010 12:53:42
Podobné dokumenty
Ukázková kapitola
Aktualizujeme na verzi
Oracle Database 11g
Jestliže máte již nainstalovánu dřívější verzi databázového serveru Oracle, můžete
databázi aktualizovat na verzi Oracle Database 11g. Aktualizovat je mož...
(SDE) Geodatabáze - úvod
Hlavní důvody (výhody) využití RDBMS pro ukládání geodat stručně shrnují následující body:
• Data (atributová i prostorová) jsou integrována v jednom datovém úložišti.
• Větší možnosti při ochraně,...
Příklad
Vytvoří index nad uvedeným sloupcem definované tabulky.
CREATE [BITMAP] INDEX
PROGRAMOVÁNÍ V SQL
Anatomie příkazu SQL ....................................................................................................12
Práce se sloupci, znaky, a záznamy (řádky) .................................
Úvodní uživatelská dokumentace
(http://www.sqliteexpert.com/download.html). Jedná se o plně dostačujícího SQL managera, práce v něm
je poměrně intuitivní, nicméně pro práci mimo rozsah našeho tutoriálu vyžaduje znalosti jazyka S...
4 CH H.264 DVR
Tento návod je doplňkem anglického originálního manuálu na přiloženém CD (dále jen OM).
zoznamenie.sk
schému pouÏívaÈ pre prípadné experimenty s jazykom PL/SQL. Po prepnutí sa do zloÏky Administration
sa zameriame na blok funkcií Security. Pomocou
URL odkazu USERS v tomto bloku sa zobrazí stránka
rukovet programatora v os unix
Nastane-li specifikovaná událost na jednom ze strážených deskriptorů, volánı́ služby se ukončı́ a vrátı́
informace nutné pro následné ošetřenı́ této události (čtenı́, zápis, uzav...