Referenční příručka SQL

| | |

Autorizace příkazu CREATE PROCEDURE (SQL)

|

Pokud má autorizační ID příkazu oprávnění SYSADM, ale nemá oprávnění DBADM, je tomuto ID poskytnuto implicitní oprávnění |DBADM za účelem vytvoření procedury. Toto se týká příkazu CREATE PROCEDURE (SQL), nikoli |příkazu CREATE PROCEDURE (externí).

EXPLAIN_DIAGNOSTIC: nová vysvětlující tabulka

Tabulka EXPLAIN_DIAGNOSTIC obsahuje po jedné položce pro každou diagnostickou zprávu vygenerovanou pro určitou instanci vysvětleného příkazu v tabulce EXPLAIN_STATEMENT.

Tabulková funkce EXPLAIN_GET_MSGS odesílá dotaz na vysvětlující tabulky EXPLAIN_DIAGNOSTIC a EXPLAIN_DIAGNOSTIC_DATA a vrací zformátované zprávy.

Tabulka 39. Tabulka EXPLAIN_DIAGNOSTIC
Jméno sloupce Datový typ S povolenou hodnotou Null Klíč 1 Popis
EXPLAIN_REQUESTER VARCHAR(128) Ne PK, CK Autorizační ID původce tohoto požadavku na vysvětlení.
EXPLAIN_TIME TIMESTAMP Ne PK, CK Čas odeslání požadavku na vysvětlení.
SOURCE_NAME VARCHAR(128) Ne PK, CK Jméno spuštěného balíku pro vysvětlení dynamického příkazu nebo jméno zdrojového souboru pro vysvětlení statického příkazu SQL.
SOURCE_SCHEMA VARCHAR(128) Ne PK, CK Schéma nebo kvalifikátor zdroje požadavku na vysvětlení.
SOURCE_VERSION VARCHAR(64) Ne PK, CK Verze zdroje požadavku na vysvětlení.
EXPLAIN_LEVEL CHAR(1) Ne PK, CK Úroveň vysvětlujících informací, k nimž se tento řádek vztahuje.

Platné hodnoty:

  • O: původní text (zadaný uživatelem)
  • P: PLAN SELECTION
STMTNO INTEGER Ne PK, CK Číslo příkazu v rámci balíku, k němuž se vztahuje tato vysvětlující informace. U dynamických vysvětlujících příkazů SQL se používá hodnota 1. U statických příkazů SQL je tato hodnota shodná s hodnotou použitou pro pohled katalogu SYSCAT.STATEMENTS.
SECTNO INTEGER Ne PK, CK Číslo sekce v balíku, která obsahuje tento příkaz SQL. U dynamických vysvětlujících příkazů SQL jde o číslo sekce použité k uložení sekce tohoto příkazu za běhu. U statických příkazů SQL je tato hodnota shodná s hodnotou použitou pro pohled katalogu SYSCAT.STATEMENTS.
DIAGNOSTIC_ID INTEGER Ne PK ID diagnostiky pro konkrétní instanci příkazu v tabulce EXPLAIN_STATEMENT.
CODE INTEGER Ne Ne Jedinečná číselná hodnota přiřazovaná každé diagnostické zprávě. Toto číslo lze použít v rozhraní API pro zprávy k načtení celého textu diagnostické zprávy.

  1. Zkratka PK označuje sloupce, které jsou součástí primárního klíče; zkratkou CK jsou označeny sloupce, které jsou součástí cizího klíče.

EXPLAIN_DIAGNOSTIC_DATA: nová vysvětlující tabulka

Tabulka EXPLAIN_DIAGNOSTIC_DATA obsahuje prvky zpráv pro konkrétní diagnostické zprávy zaznamenané do tabulky EXPLAIN_DIAGNOSTIC. Prvky zpráv poskytují další informace specifické pro provádění příkazu SQL, který zprávu vygeneroval.

Tabulková funkce EXPLAIN_GET_MSGS odesílá dotaz na vysvětlující tabulky EXPLAIN_DIAGNOSTIC a EXPLAIN_DIAGNOSTIC_DATA a vrací zformátované zprávy.

Tabulka 40. Tabulka EXPLAIN_DIAGNOSTIC_DATA
Jméno sloupce Datový typ S povolenou hodnotou Null Klíč 1 Popis
EXPLAIN_REQUESTER VARCHAR(128) Ne CK Autorizační ID původce tohoto požadavku na vysvětlení.
EXPLAIN_TIME TIMESTAMP Ne CK Čas odeslání požadavku na vysvětlení.
SOURCE_NAME VARCHAR(128) Ne CK Jméno spuštěného balíku pro vysvětlení dynamického příkazu nebo jméno zdrojového souboru pro vysvětlení statického příkazu SQL.
SOURCE_SCHEMA VARCHAR(128) Ne CK Schéma nebo kvalifikátor zdroje požadavku na vysvětlení.
SOURCE_VERSION VARCHAR(64) Ne CK Verze zdroje požadavku na vysvětlení.
EXPLAIN_LEVEL CHAR(1) Ne CK Úroveň vysvětlujících informací, k nimž se tento řádek vztahuje.

Platné hodnoty:

  • O: původní text (zadaný uživatelem)
  • P: PLAN SELECTION
STMTNO INTEGER Ne CK Číslo příkazu v rámci balíku, k němuž se vztahuje tato vysvětlující informace. U dynamických vysvětlujících příkazů SQL se používá hodnota 1. U statických příkazů SQL je tato hodnota shodná s hodnotou použitou pro pohled katalogu SYSCAT.STATEMENTS.
SECTNO INTEGER Ne CK Číslo sekce v balíku, která obsahuje tento příkaz SQL. U dynamických vysvětlujících příkazů SQL jde o číslo sekce použité k uložení sekce tohoto příkazu za běhu. U statických příkazů SQL je tato hodnota shodná s hodnotou použitou pro pohled katalogu SYSCAT.STATEMENTS.
DIAGNOSTIC_ID INTEGER Ne PK ID diagnostiky pro konkrétní instanci příkazu v tabulce EXPLAIN_STATEMENT.
ORDINAL INTEGER Ne Ne Pozice prvku v úplném textu zprávy.
TOKEN VARCHAR(1000) Ano Ne Prvek zprávy, který má být vložen do úplného textu zprávy; prvek může být zkrácen.
TOKEN_LONG BLOB(3M) Ano Ne Pro podrobnější informace, pokud jsou k dispozici.

  1. Zkratka PK označuje sloupce, které jsou součástí primárního klíče; zkratkou CK jsou označeny sloupce, které jsou součástí cizího klíče.

Schéma používané prostředkem Explain

Prostředek Explain používá následující ID jako schéma pro kvalifikaci naplňovaných tabulek Explain:

Schéma lze přidružit k sadě vysvětlujících tabulek nebo k aliasům, které odkazují na sadu vysvětlujících tabulek pod jiným schématem.

Nejsou-li pod schématem nalezeny žádné vysvětlující tabulky, prostředek Explain zjistí, zda existují vysvětlující tabulky pod schématem SYSTOOLS, a pokusí se je použít.

Řetězcová reprezentace hodnot data a času

Řetězce času

Řetězcová reprezentace času je řetězec, který začíná číslicí a má délku alespoň 4 znaky. Mohou v něm být obsaženy koncové mezery. V části určené pro hodiny může být vynechána počáteční nula a sekundy mohou být vynechány zcela. Jsou-li sekundy vynechány, předpokládá se implicitní specifikace 0 sekund. Tedy hodnota 13:30 je ekvivalentní hodnotě 13:30:00.

Platné formáty řetězce pro čas jsou uvedeny v následující tabulce. Každý formát je označen jménem a přidruženou zkratkou.

Tabulka 41. Formáty pro řetězcovou reprezentaci času
Jméno formátu Zkratka Formát času Příklad
International Standards Organization ISO hh.mm.ss 13.30.05
Standard společnosti IBM v USA USA hh:mm AM nebo PM 1:30 PM
Standard společnosti IBM v Evropě EUR hh.mm.ss 13.30.05
Japonský průmyslový standard křesťanského období JIS hh:mm:ss 13:30:05
Místní LOC Závisí na kódu teritoria aplikace -

Od verze 8.2 lze řetězce "AM" a "PM" zadávat malými i velkými písmeny.

[ Začátek stránky |Předchozí stránka | Další stránka | Obsah ]