Страница 20 из 25
4. 1. 4 Оператор установки дескриптораОператор установки имеет следующий синтаксис: <set descriptor statement> ::= SET DESCRIPTOR <descriptor name> <set descriptor information> <set descriptor information> ::= <set count> | VALUE <item number> <set item information> [{<comma> <set item information>}. . . ] <set count> ::= COUNT <equals operator> <simple value specification 1> <set item information> ::= <descriptor item name> <equals operator> <simple value specification 2> <simple target specification 1> ::= <simple target specification> <simple target specification 2> ::= <simple target specification> <item number> ::= <simple value specification> Оператор SET DESCRIPTOR служит для заполнения элементов дескриптора с целью его будущего использования в разделе USING. За одно выполнениеоператора можно поместить значение в поле COUNT (число заполненных элементов)либо частично или полностью сформировать один элемент дескриптора. 4. 1. 5 Оператор подготовкиОператор определяется следующим синтаксисом: <prepare statement> ::= PREPARE < SQL statement name> FROM < SQL statement variable> < SQL statement variable> ::= <simple target specification> <preparable statement> ::= <preparable SQL data statement> | <preparable SQL schema statement> | <preparable SQL transaction statement> | <preparable SQL session statement> | <preparable implementation-defined statement> <preparable SQL data statement> ::= <delete statement: searched> | <dynamic single row select statement> | <insert statement> | <dynamic select statement> | <update statement: searched> | <preparable dynamic delete statement: positioned> | <preparable dynamic update statement: positioned> <preparable SQL schema statement> ::= < SQL schema statement> <preparable SQL transaction statement> ::= < SQL transaction statement> <preparable SQL session statement> ::= < SQL session statement> <dynamic select statement> ::= <cursor specification> <dynamic simple row select statement> ::= <query specification> < SQL statement name> ::= <statement name> | <extended statement name> <extended statement name> ::= [scope option] <simple value specification> <cursor specification> ::= <query expression> [<order by clause>] [<updatability clause>] <updatability clause> ::= FOR { READ ONLY | UPDATE [ OF <column name list> ] } <query expression> ::= <non-join query expression> | <joined table> <query specification> ::= SELECT [<set quantifier>] <select list> <table expression> <set quantifier> ::= DISTINCT | ALL Оператор PREPARE вызывает компиляцию и построение плана выполнения оператора SQL, заданного в текстовой форме. После успешного выполнения оператора PREPARE с подготовленным оператором связывается указанное (литерально или косвенно) имя этого оператора, которое потом может быть использовано в операторах DESCRIBE, EXECUTE, OPEN CURSOR, ALLOCATE CURSOR и DEALLOCATEPREPARE. Эта связь сохраняется до явного выполнения оператора DEALLOCATEPREPARE. |