Index
A  B  C  D  E  F  G  H  I  J  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z 
Symbols
- #include
 
- 
- file inclusion, Pro*C compared to C, 5.4.1
 
 
A
- abnormal termination
 
- 
- automatic rollback, F.15
 
 
- active set
 
- 
- changing, 6.5.2, 6.5.3
 
- cursor movement through, 6.5.3
 
- definition of, 2.1.9
 
- how identified, 6.5
 
- if empty, 6.5.3
 
- when fetched from, 6.5.3
 
- when no longer defined, 6.5
 
 
- ALLOCATE
 
- 
- allocating a cursor variable, 4.5.2
 
 
- ALLOCATE DESCRIPTOR statement, 14.5.1, F.5
 
- ALLOCATE SQL statement, 17.4.2
 
- ALLOCATE SQL statements, F.4
 
- allocating
 
- 
- cursor variables, 4.5.2
 
- cursors, F.4
 
- thread context, 11.4.2.2, F.17
 
 
- ANSI C Support, E.1.3
 
- ANSI dynamic SQL, A.2.12, G.1
 
- 
- reference semantics, 14.3.1
 
- See also dynamic SQL (ANSI), 14
 
 
- application development process, 2.2
 
- array of structs, 8.10, A.2.1
 
- ARRAYLEN statement, 7.5.1
 
- arrays
 
- 
- batch fetch, 8.4.1
 
- bulk operations (ANSI dynamic SQL), 14.3.2
 
- chapter discusses how to use, 8
 
- definition of, 4.8.1
 
- host arrays, 2.1.7
 
- operations, 2.1.7
 
- varying length, 18.1.2
 
 
- associative interface, 17.4
 
- 
- when to use, 17.4.1
 
 
- AT clause
 
- 
- in CONNECT statement, 3.2.4.1
 
- in DECLARE CURSOR statement, 3.2.4.1.3
 
- in DECLARE STATEMENT statement, 3.2.4.1.4
 
- in EXECUTE IMMEDIATE statement, 3.2.4.1.4
 
- of COMMIT statement, F.15, F.23
 
- of EXECUTE IMMEDIATE statement, F.35
 
- of EXECUTE statement, F.32
 
- of INSERT statement, F.40
 
- of SAVEPOINT statement, F.72
 
- of SELECT statement, F.73
 
- of SROLLBACK statement, F.71
 
- of UPDATE statement, F.76
 
- restriction on, 3.2.4.1.3
 
- use of, 3.2.4.1.3
 
 
- attributes of a collection
 
- 
- descriptions, 18.4.6
 
 
- AUTO_CONNECT, 10.5.1
 
- 
- precompiler option, 3.1.3.1
 
 
- AUTO_CONNECT precompiler option, 10.5.1
 
- automatic connections, 3.1.3, 3.2.4
 
B
- batch fetch
 
- 
- advantage of, 8.4.1
 
- example of, 8.4.1
 
- number of rows returned by, 8.4.3
 
 
- BFILES, 16.1.2
 
- 
- security, 16.1.3
 
 
- bind descriptor, 13.10.1, 15.2.1, 15.2.1
 
- 
- definition of, 13.10.1
 
- information in, 13.10.2
 
 
- bind SQLDA
 
- 
- purpose of, 15.1.3
 
 
- bind variables
 
- 
- input host variables, 13.10.1
 
 
- binding
 
- 
- definition of, 13.5
 
 
- BREAK action
 
- 
- of WHENEVER, F.78
 
 
- Byte Ordering, E.1.6
 
C
- C preprocessor
 
- 
- directives supported by Pro*C, 5.4
 
- how used in Pro*C, 5.4
 
 
- C structs
 
- 
- generating for a REF, 17.13.1
 
- using, 17.12
 
 
- C types of collection attributes, 18.4.6
 
- C variable in SQLDA
 
- 
- how value is set, 15.3.9
 
- purpose of, 15.3.9
 
 
- C++, 1.8.5
 
- C++ applications, 12
 
- cache, 17.3
 
- CACHE FREE ALL SQL statement, 17.4.4
 
- CACHE FREE ALL statement, F.6
 
- CALL SQL statement, F.7
 
- CALL statement, 7.7.2.3, A.2.3
 
- 
- example, 7.7.2.4
 
 
- Calling Java from PL/SQL, A.3.5
 
- CASE OTT parameter, 19.5.2.10
 
- case sensitivity
 
- 
- in precompiler options, 10.1.1
 
 
- CHAR datatype, 4.1.2.17
 
- CHAR_MAP precompiler option, 5.1.1, 10.5.2, A.2.6
 
- character data, 5.1
 
- character strings
 
- 
- multibyte, 4.11.4
 
 
- CHARF datatype, 4.1.2.19, 5.3.3
 
- CHARZ datatype, 4.1.2.18
 
- CLOSE CURSOR statement, 14.5.13
 
- CLOSE SQL statements, F.8
 
- CLOSE statement
 
- 
- dependence on precompiler options, 6.5.4
 
- example, 6.5.4, F.8
 
- purpose of, 6.5, 6.5.4
 
- use in dynamic SQL method 4, 15.6.18
 
 
- CLOSE_ON_COMMIT
 
- 
- precompiler option, 10.5.4, A.3.9
 
 
- closing
 
- 
- cursors, F.8
 
 
- CODE
 
- 
- precompiler option, 12.2.1
 
 
- CODE option, 10.2.6.2
 
- CODE OTT parameter, 19.5.2.4
 
- code page, 4.10
 
- CODE precompiler option, 10.5.8, 10.5.8
 
- coding conventions, 2.3
 
- COLLECT GET statement
 
- 
- example, 18.5.2
 
 
- COLLECTION APPEND, F.9
 
- COLLECTION APPEND statement, 18.4.4
 
- 
- SQL statements
 
- 
- COLLECTION APPEND, F.9
 
 
 
- COLLECTION DESCRIBE
 
- 
- example, 18.5.3
 
 
- COLLECTION DESCRIBE statement, 18.4.6
 
- 
- SQL statements
 
- 
- COLLECTION DESCRIBE, F.10
 
 
 
- COLLECTION GET statement, 18.4.1
 
- 
- SQL statements
 
- 
- COLLECTION GET, F.11
 
 
 
- collection object types
 
- 
- handling, 18.2.2
 
 
- COLLECTION RESET statement, 18.4.3
 
- 
- example, 18.5.4
 
- SQL statements
 
- 
- COLLECTION RESET, F.12
 
 
 
- COLLECTION SET statement, 18.4.2
 
- 
- example, 18.5.2
 
- SQL statements
 
- 
- COLLECTION SET, F.13
 
 
 
- COLLECTION TRIM statement, 18.4.5
 
- 
- SQL statements
 
- 
- COLLECTION TRIM, F.14
 
 
 
- collection types
 
- 
- structs for, 18.2
 
 
- collections, A.2.13
 
- 
- and C, 18.1.3
 
- autonomous access, 18.2.2.1
 
- descriptors, 18.2
 
- element access, 18.2.2.2
 
- manipulating, 18.2.2
 
- nested tables, 18.1.1
 
- OBJECT GET statement, 18.3
 
- OBJECT SET statement, 18.3
 
- VARRAYs, 18.1.2
 
 
- column list
 
- 
- in INSERT statements, 6.3.2
 
- when permissible to omit, 6.3.2
 
 
- COMMENT clause
 
- 
- of COMMIT statement, F.15
 
 
- Comments
 
- 
- restrictions in PL/SQL block, 13.12.4
 
 
- comments
 
- 
- ANSI, 2.3.1
 
- which allowed, 2.3.1
 
 
- commit
 
- 
- automatic, 3.5
 
- explicit versus implicit, 3.5
 
- function of, 3.4
 
 
- COMMIT SQL statement, F.15
 
- COMMIT statement, 3.6
 
- 
- effect of, 3.6
 
- ending a transaction, F.71
 
- example of, 3.6
 
- examples, F.15
 
- purpose of, 3.6
 
- RELEASE option in, 3.6
 
- using in a PL/SQL block, 3.14.3
 
- where to place, 3.6
 
 
- committing
 
- 
- transactions, F.15
 
 
- communicating over a network, 3.2.1
 
- COMP_CHARSET precompiler option, 10.5.9, 10.5.10, 10.5.10
 
- compiling, 2.6
 
- 
- specifying include file locations, 5.4.7
 
 
- concurrency
 
- 
- definition of, 3.3
 
 
- concurrent connections, 3.2.2
 
- conditional precompilation, 2.4
 
- 
- defining symbols, 5.6.1
 
- example, 2.4.2, 5.6.2
 
 
- CONFIG OTT parameter, 19.5.2.8
 
- CONFIG precompiler option, 10.5.3, 10.5.5, 10.5.6, 10.5.7, 10.5.11, 10.5.11, 10.5.12, 10.5.14
 
- configuration files, 10.2.1, 10.2.6.1
 
- 
- and the Object Type Translator, 19.2.2
 
- location, 10.2.1, 10.2.6.1
 
- system, 10.2.2
 
- user, 10.2.2
 
 
- CONNECT statement, F.16, F.16
 
- 
- AT clause in, 3.2.4.1
 
- connecting to Oracle with, 3.1
 
- examples, F.16
 
- requirements for, 3.1
 
- USING clause in, 3.2.4.1
 
- using to enable a semantic check, D.3.1.1
 
 
- connecting to Oracle, 3.1
 
- 
- automatic connections, 3.1.3
 
- concurrently, 3.2.2
 
- example of, 3.1
 
- using Oracle Net, 3.2.2
 
 
- connection pooling, 11.6
 
- 
- demo program1, 11.6.2
 
- demo program2, 11.6.3
 
- example, 11.6.3.3
 
- using, 11.6.1
 
 
- connections
 
- 
- concurrent, 3.2.4.2
 
- default versus nondefault, 3.2.3
 
- Explicit connections, 3.2.4
 
- implicit, 3.2.5
 
- naming of, 3.2.4
 
 
- const
 
- 
- declaring constants, 5.7.2
 
 
- CONTEXT ALLOCATE SQL statement, F.17
 
- CONTEXT ALLOCATE statement, 11.4.2.2
 
- context block
 
- 
- definition of, 20.4.1
 
 
- CONTEXT FREE statement, 11.4.2.4, F.18
 
- CONTEXT OBJECT OPTION GET SQL statement, 17.7.2
 
- CONTEXT OBJECT OPTION SET SQL statement, 17.7.1
 
- CONTEXT USE directive, 11.4.2.3
 
- CONTEXT USE SQL directive, F.21
 
- CONTEXT USE SQL statement, 11.4.2.3
 
- CONTINUE action
 
- 
- in the WHENEVER statement, 9.8.2.1
 
- of WHENEVER directive, F.78, F.78
 
- result of, 9.8.2.1
 
 
- CONVBUFSZ clause, 4.11.3
 
- CPP_SUFFIX
 
- 
- precompiler option, 12.2.3
 
 
- CPP_SUFFIX precompiler option, 10.5.13
 
- CPP_SUFFIX precompiler options, 10.5.13
 
- CREATE PROCEDURE statement
 
- 
- embedded, 7.7.1
 
 
- creating
 
- 
- savepoints, F.72
 
 
- creating temporary LOB, 16.4.5
 
- CURRENT OF clause, 8.3.3
 
- 
- example of, 6.9
 
- mimicking with ROWID, 3.12, 8.11
 
- purpose of, 6.9
 
- restrictions on, 6.9.1
 
 
- current row
 
- 
- definition of, 2.1.9
 
- using FETCH to retrieve, 6.5
 
 
- cursor cache
 
- 
- definition of, 9.10.4
 
- purpose of, C.9.2.1
 
 
- cursor control statements
 
- 
- example of typical sequence, 6.10
 
 
- cursor operations
 
- 
- overview of, 6.5
 
 
- cursor variables, 4.5, F.4
 
- 
- allocating, 4.5.2
 
- declaring, 4.5.1
 
- restrictions on, 4.5.6
 
 
- cursors, 2.5.1.1, 4.5
 
- 
- allocating, F.4
 
- allocating a cursor variable, 4.5.2
 
- analogy for, 2.1.9
 
- association with queries, 6.5
 
- closing, F.8
 
- declaring, 6.5.1
 
- definition of, 2.1.9
 
- explicit versus implicit, 2.1.9
 
- fetching rows from, F.36, F.37
 
- for multirow queries, 6.5
 
- how handling affects performance, C.9.1
 
- movement through active set, 6.5.3
 
- opening, F.67, F.68
 
- purpose of, 6.5
 
- reopening, 6.5.2, 6.5.3
 
- restrictions on declaring, 6.5.1
 
- rules for naming, 6.5.1
 
- scope of, 6.5.1
 
- scrollable cursors, 6.6
 
- statements for manipulating, 6.5
 
- types of, 2.1.9
 
- using more than one, 6.5.1
 
 
D
- data definition language
 
- 
- in transactions, 3.5
 
 
- data integrity, 3.2.4.3
 
- 
- definition of, 3.3
 
 
- data locks, 3.3
 
- database link
 
- 
- creating synonym for, 3.2.5.1
 
- defining, 3.2.5.1
 
- example using, 3.2.5.1
 
- using in INSERT statement, F.40
 
- where stored, 3.2.5.1
 
 
- database types
 
- 
- new, 17.15
 
 
- databases
 
- 
- naming, 3.2.3
 
 
- datatype equivalencing, 2.1.8
 
- datatypes
 
- 
- ANSI DATE, 4.1.3.2
 
- codes used in descriptors, 15.4.2
 
- coercing NUMBER to VARCHAR2, 15.4.2
 
- conversions, 5.2, 5.2
 
- dealing with ORACLE internal, 15.4.2
 
- equivalencing, 5.3
 
- equivalencing, purpose of, 2.1.8
 
- internal, 4.1.1
 
- internal versus external, 2.1.6
 
- INTERVAL DAY TO SECOND, 4.1.3.7
 
- INTERVAL YEAR TO MONTH, 4.1.3.6
 
- list of internal, 15.4.1.1
 
- need to coerce, 15.4.2
 
- Oracle, 2.1.6
 
- OTT mappings, 19.2.5
 
- restrictions on using, 17.16
 
- TIMESTAMP, 4.1.3.3
 
- TIMESTAMP WITH LOCAL TIME ZONE, 4.1.3.5
 
- TIMESTAMP WITH TIME ZONE, 4.1.3.4
 
- user-defined type equivalencing, F.75
 
- when to reset, 15.4.2
 
 
- DATE datatype, 4.1.2.10
 
- DATE, ANSI
 
- 
- datatype, 4.1.3.2
 
 
- datetime
 
- 
- avoiding unexpected results, 4.1.3.8
 
 
- DBMS interaction with MODE, 10.5.16
 
- DBMS option, 5.3.3, 10.2.6.3
 
- DBMS precompiler option, 10.5.15, 10.5.16, 10.5.16
 
- deadlock
 
- 
- definition of, 3.3
 
- effect on transactions, 3.8.1
 
- how broken, 3.8.1
 
 
- DEALLOCATE DESCRIPTOR statement, 14.5.2, F.22
 
- declaration
 
- 
- of cursors, 6.5.1
 
- of host arrays, 8.2
 
- of pointer variables, 4.9.1
 
- of SQLCA, 9.6.1
 
 
- declarative SQL statements
 
- 
- in transactions, 3.5
 
 
- DECLARE CURSOR directives
 
- 
- examples, F.23
 
 
- DECLARE CURSOR statement, 14.5.10
 
- 
- AT clause in, 3.2.4.1.3
 
- use in dynamic SQL method 4, 15.6.7
 
 
- DECLARE DATABASE SQL directives, F.24
 
- Declare Section
 
- 
- allowable statements, 2.3.3
 
- form, 2.3.3
 
- purpose, 2.3.3
 
- required when MODE=ANSI, 10.5.37
 
- requirements, 2.3.3
 
- rules for defining, 2.3.3
 
- when MODE=ANSI, 5.3.4
 
- when required, 2.3.3, 4.2.1
 
 
- DECLARE statement, 6.5.1
 
- 
- example of, 6.5.1
 
- purpose of, 6.5
 
- required placement of, 6.5.1
 
- scope of, F.25
 
- use in dynamic SQL method 3, 13.9.2
 
 
- DECLARE STATEMENT directive, F.25
 
- DECLARE STATEMENT statement
 
- 
- AT clause in, 3.2.4.1.4
 
- example of using, 13.11
 
- using with dynamic SQL, 13.11
 
- when required, 13.11
 
 
- DECLARE statements
 
- 
- examples, F.25
 
 
- DECLARE TABLE directive
 
- 
- examples, F.26
 
- using with the SQLCHECK option, D.3.1.2
 
 
- DECLARE TABLE SQL directive, F.26
 
- DECLARE TABLE statement
 
- 
- need for with AT clause, 3.2.4.1.1
 
 
- DECLARE TYPE directive, F.27
 
- DEF_SQLCODE precompiler option, 10.5.17
 
- default connections, 3.2.3
 
- default database, 3.2.3
 
- default file name extensions, 19.5.7
 
- DEFINE precompiler option, 10.5.18
 
- 
- used in application migration, 5.4.9
 
 
- defining symbols, 2.4.1
 
- DELETE SQL statement, F.28
 
- DELETE statement
 
- 
- embedded SQL examples, F.28
 
- example of, 6.3.4
 
- purpose of, 6.3.4
 
- using host arrays in, 8.7
 
- WHERE clause in, 6.3.4
 
 
- delimiters
 
- 
- C versus SQL, 2.3.4
 
 
- DEPT table, 2.7
 
- DESCRIBE BIND VARIABLES statement
 
- 
- use in dynamic SQL method 4, 15.6.8
 
 
- DESCRIBE command
 
- 
- use with PREPARE command, F.29
 
 
- DESCRIBE DESCRIPTOR statement, F.30
 
- DESCRIBE INPUT statement, 14.5.6
 
- DESCRIBE OUTPUT statement, 14.5.7
 
- DESCRIBE SELECT LIST statement
 
- 
- use in dynamic SQL method 4, 15.6.12
 
 
- DESCRIBE SQL statement, F.29
 
- DESCRIBE statement
 
- 
- examples, F.29
 
- use in dynamic SQL Method 4, 13.10.1
 
 
- descriptions of collection attributes, 18.4.6
 
- descriptors, 15.2.1
 
- 
- bind descriptor, 13.10.1
 
- definition of, 13.10
 
- need for, 15.2.1
 
- select descriptor, 13.10.1
 
- using the sqlald() function to allocate, 15.2.4
 
- using the sqlclu() function to deallocate, 15.6.17
 
 
- determining current value of precompiler options, 10.2.2
 
- directory structures, 1.6
 
- distributed processing
 
- 
- support for, 3.2.2
 
- using Oracle Net for, 3.2.2
 
 
- distributed transactions, F.71
 
- DML Returning Clause, A.3.6
 
- DML returning clauses, 6.4
 
- DO action
 
- 
- in the WHENEVER statement, 9.8.2.2
 
- of WHENEVER directive, F.78
 
- result of, 9.8.2.2
 
 
- .dsp files, G.4
 
- DTP model, 5.12
 
- dummy host variables
 
- 
- placeholders, 13.4
 
 
- DURATION precompiler option, 10.5.20, 17.8.2
 
- Dynamic Link Libraries (DLLs), 1.7
 
- dynamic PL/SQL
 
- 
- rules for, 13.12
 
- versus dynamic SQL, 13.12
 
 
- dynamic SQL
 
- 
- advantages and disadvantages of, 13.2
 
- cannot use cursor variables with, 4.5.6
 
- choosing the right method, 13.6.5
 
- definition of, 2.1.3
 
- guidelines for, 13.6.5
 
- method 1, G.1
 
- method 2, G.1
 
- method 3, G.1, G.1
 
- method 4, G.1
 
- overview of, 13.1
 
- restriction on, 6.9.1
 
- restrictions on use of datatypes, 17.16
 
- restrictions on using datatypes in, 17.16
 
- use of PL/SQL with, 7.9
 
- uses for, 13.2
 
- using the AT clause in, 3.2.4.1.4
 
- when to use, 13.3
 
 
- dynamic SQL (ANSI)
 
- 
- basics, 14.1
 
- bulk operations, 14.3.2
 
- differences from Oracle dynamic, 14.5.14
 
- Oracle extensions, 14.3
 
- Overview, 14.2
 
- Precompiler Options, 14.1.1
 
- precompiler options, 14.4
 
- reference semantics, 14.3.1
 
- sample program, 14.6.2
 
- sample programs, 14.6
 
 
- dynamic SQL method 1
 
- 
- commands used with, 13.6.1
 
- description of, 13.7
 
- example of, 13.7.1
 
- how to use, 13.7
 
- requirements for, 13.6.1
 
- use of EXECUTE IMMEDIATE with, 13.7
 
- use of PL/SQL with, 13.12.1
 
 
- dynamic SQL method 2
 
- 
- commands used with, 13.6.2
 
- description of, 13.8
 
- example of, 13.8.2
 
- requirements for, 13.6.2
 
- use of DECLARE STATEMENT with, 13.11
 
- use of EXECUTE with, 13.8
 
- use of PL/SQL with, 13.12.2
 
- use of PREPARE with, 13.8
 
 
- dynamic SQL method 3
 
- 
- commands used with, 13.6.3
 
- compared to method 2, 13.9
 
- example program, 13.9.6
 
- requirements for, 13.6.3
 
- sequence of statements used with, 13.9
 
- use of DECLARE STATEMENT with, 13.11
 
- use of DECLARE with, 13.9.2
 
- use of FETCH with, 13.9.4
 
- use of OPEN with, 13.9.3
 
- use of PL/SQL with, 13.12.3
 
- use of PREPARE with, 13.9.1
 
 
- dynamic SQL method 4
 
- 
- need for descriptors with, 15.2.1
 
- overview of, 13.10.1
 
- prerequisites for using, 15.4
 
- requirements for, 13.6.4
 
- requirements of, 15.1.1
 
- sample program, 15.7
 
- sequence of statements used with, 13.10.4, 15.6
 
- steps for, 15.5
 
- use of CLOSE statement in, 15.6.18
 
- use of DECLARE CURSOR statement in, 15.6.7
 
- use of DECLARE STATEMENT with, 13.11
 
- use of DESCR, 13.10.1
 
- use of DESCRIBE statement in, 15.6.8, 15.6.12
 
- use of descriptors with, 13.10
 
- use of FETCH statement in, 15.6.15
 
- use of OPEN statement in, 15.6.11
 
- use of PL/SQL with, 13.12.4
 
- use of PREPARE statement in, 15.6.6
 
- use of the SQLDA in, 13.10.1, 15.2.1
 
- using host arrays with, 15.6.19
 
- using the FOR clause with, 13.11.1, 15.6.19
 
- when needed, 13.10
 
 
- dynamic SQL methods
 
- 
- overview of, 13.6
 
 
- dynamic SQL statements
 
- 
- binding of host variables in, 13.5
 
- definition of, 13.1
 
- requirements for, 13.4
 
- use of placeholders in, 13.4
 
- using host arrays in, 13.11.1
 
- versus static SQL statements, 13.1
 
 
E
- embedded PL/SQL
 
- 
- advantages of, 7.1.1
 
- cursor FOR loop, 7.1.3
 
- example of, 7.3.1, 7.3.2
 
- overview of, 2.1.4
 
- packages, 7.1.5
 
- PL/SQL tables, 7.1.6
 
- procedures and functions, 7.1.4
 
- requirements for, 7.2
 
- SQLCHECK option, 7.2
 
- support for SQL, 2.1.4
 
- user-defined records, 7.1.7
 
- using %TYPE, 7.1.2
 
- using the VARCHAR pseudotype with, 7.3.3
 
- using to improve performance, C.4
 
- where allowed, 7.2
 
 
- embedded SQL, G.1
 
- 
- ALLOCATE statement, F.4
 
- CLOSE statement, F.8
 
- CONTEXT ALLOCATE statement, 11.4.2.2, F.17
 
- CONTEXT FREE statement, 11.4.2.4
 
- definition of, 2.1.1
 
- difference from interactive SQL, 2.1.2
 
- ENABLE THREADS statement, 11.4.2.1
 
- EXEC SQL CACHE FREE ALL, 17.4.4
 
- EXECUTE statement, F.32
 
- key concepts of, 2.1
 
- mixing with host-language statements, 2.1.2
 
- OPEN statement, F.67
 
- overview of, 2.1.1
 
- PREPARE statement, F.69
 
- requirements for, 2.1.2
 
- SAVEPOINT statement, F.72
 
- SELECT statement, F.73
 
- syntax for, 2.1.2
 
- testing with SQL*Plus, 1.3
 
- TYPE directive, F.75
 
- UPDATE statement, F.76
 
- using OCI types in, 17.14.2
 
- using REFs in, 17.13.3
 
- VAR directive, F.77
 
- when to use, 1.3
 
- WHENEVER directive, F.78
 
 
- embedded SQL statements
 
- 
- labels for, 9.8.2.5
 
- referencing host arrays in, 8.3.1
 
- referencing host variables in, 4.2.2
 
- suffixes and prefixes not allowed, 2.3.2
 
- terminator for, 2.3.13
 
- use of apostrophes in, 2.3.4
 
- use of quotation marks in, 2.3.4
 
 
- embedding
 
- 
- PL/SQL blocks in precompiler programs, F.32
 
 
- EMP table, 2.7
 
- ENABLE THREADS SQL statement, F.31
 
- ENABLE THREADS statement, 11.4.2.1
 
- enabling
 
- 
- threads, 11.4.2.1
 
 
- encoding scheme (character set or code page), 4.10
 
- enqueues
 
- 
- locking, 3.3
 
 
- entering options, 5.4.4, 10.4
 
- equivalencing
 
- 
- host variable equivalencing, F.77
 
- user-defined type equivalencing, F.75
 
 
- equivalencing of datatypes
 
- 
- datatype equivalencing, 2.1.8
 
 
- error detection
 
- 
- error reporting, F.78
 
 
- error handling, 2.1.11
 
- 
- alternatives, 9.2
 
- need for, 9.1
 
- overview of, 2.1.11
 
- SQLCA versus WHENEVER statement, 9.2.2
 
- use of ROLLBACK statement in, 3.8
 
 
- error messages
 
- 
- maximum length of, 9.7
 
- use in error reporting, 9.5.5
 
- using the sqlglm() function to get, 9.7
 
- where available in SQLCA, 9.5.5
 
 
- error reporting
 
- 
- key components of, 9.5
 
- use of error messages in, 9.5.5
 
- use of parse error offset in, 9.5.4
 
- use of rows-processed count in, 9.5.3
 
- use of warning flags in, 9.5.2
 
- WHENEVER directive, F.78
 
 
- ERRORS precompiler option, 10.5.21
 
- ERRTYPE
 
- 
- precompiler option, 10.5.22
 
 
- ERRTYPE OTT parameter, 19.5.2.9
 
- ERRTYPE precompiler option, 17.8.5
 
- exception, PL/SQL
 
- 
- definition of, 7.4.1
 
 
- EXEC ORACLE DEFINE statement, 5.6
 
- EXEC ORACLE ELSE statement, 2.4, 5.6
 
- EXEC ORACLE ENDIF statement, 2.4, 5.6
 
- EXEC ORACLE IFDEF statement, 2.4, 5.6
 
- EXEC ORACLE IFNDEF statement, 2.4, 5.6
 
- EXEC ORACLE OPTION statement
 
- 
- set option values inline, 10.4
 
 
- EXEC ORACLE statement
 
- 
- scope of, 10.4.2.2
 
- syntax for, 10.4.2
 
- uses for, 10.4.2.1
 
 
- EXEC ORACLE statements, 2.4
 
- EXEC SQL CACHE FREE statement, 17.4.4
 
- EXEC SQL clause
 
- 
- using to embed SQL, 2.1.2
 
 
- EXEC SQL INCLUDE
 
- 
- contrasted with #include, 5.4.8
 
 
- EXEC SQL VAR statement
 
- 
- CONVBUFSZ clause, 4.11.3
 
 
- EXEC TOOLS
 
- 
- GET CONTEXT statement, 20.5.5
 
- GET statement, 20.5.3
 
- MESSAGE statement, 20.5.6
 
- SET CONTEXT statement, 20.5.4
 
- SET statement, 20.5.2
 
 
- EXEC TOOLS statements, 20.5
 
- executable SQL statements
 
- 
- purpose of, 6.3
 
- uses for, 2.1.1.1
 
- where allowed, 2.1.1.1
 
 
- EXECUTE ... END-EXEC SQL statement, F.32
 
- EXECUTE DESCRIPTOR statement
 
- 
- SQL statements
 
- 
- EXECUTE DESCRIPTOR, F.34
 
 
 
- EXECUTE IMMEDIATE SQL statement, F.35
 
- EXECUTE IMMEDIATE statement, 14.5.9
 
- 
- AT clause in, 3.2.4.1.4
 
- examples, F.35
 
- use in dynamic SQL method 1, 13.7
 
 
- EXECUTE optional keyword of ARRAYLEN statement, 7.5.2
 
- EXECUTE SQL statement, F.33
 
- EXECUTE statement, 14.5.8
 
- 
- examples, F.32, F.33
 
- use in dynamic SQL method 2, 13.8
 
 
- execution of statements, 13.5
 
- execution plan, C.5, C.5.2
 
- EXPLAIN PLAN statement
 
- 
- function of, C.5.2
 
- using to improve performance, C.5.2
 
 
- explicit connections, 3.2.4
 
- 
- description of, 3.2.4
 
- multiple, 3.2.4.2
 
- single, 3.2.4.1
 
 
- extensions
 
- 
- default file name, 19.5.7
 
 
- external datatypes
 
- 
- definition of, 2.1.6
 
- FLOAT, 4.1.2.4
 
- INTEGER, 4.1.2.3
 
- STRING, 4.1.2.5
 
 
- external procedures, A.3.3
 
- 
- callbacks, 7.8
 
- calling from PL/SQL, 7.8
 
- creating, 7.8.2
 
- error-handling, 7.8.3
 
- restrictions, 7.8.1
 
 
F
- F variable in SQLDA
 
- 
- how value is set, 15.3.6
 
- purpose of, 15.3.6
 
 
- FAQs, 1.8
 
- features
 
- 
- new, Preface
 
 
- features,new, Preface
 
- FETCH DESCRIPTOR SQL statement, F.37
 
- FETCH SQL statement, F.36
 
- FETCH statement, 14.5.12
 
- 
- example of, 6.5.3
 
- examples, F.36
 
- INTO clause in, 6.5.3
 
- purpose of, 6.5, 6.5.3
 
- results of, 6.5.3
 
- use in dynamic SQL method 3, 13.9.4
 
- use in dynamic SQL method 4, 15.6.15
 
- used after OPEN command, F.68
 
- used after OPEN statement, F.67
 
 
- fetching
 
- 
- rows from cursors, F.36, F.37
 
 
- fetching in batches
 
- 
- batch fetch, 8.4.1
 
 
- FIPS flagger
 
- 
- warns of array usage, 8.3.4
 
- warns of missing Declare Section, 4.2.1
 
- warns of use of pointers as host variables, 5.1.3.3
 
 
- FIPS precompiler option, 10.5.24
 
- flags
 
- 
- warning flags, 9.5.2
 
 
- FLOAT datatype, 4.1.2.4
 
- FOR clause
 
- 
- example of using, 8.8
 
- of embedded SQL EXECUTE DESCRIPTOR statement, F.34, F.34
 
- of embedded SQL EXECUTE statement, F.33, F.33
 
- purpose of, 8.8
 
- requirements for, 8.8
 
- restrictions on, 8.8.1
 
- using in dynamic SQL method 4, 15.6.19
 
- using with host arrays, 8.8
 
- when variable negative or zero, 8.8
 
 
- FOR UPDATE OF clause
 
- 
- locking rows with, 3.11
 
- purpose of, 3.11.1
 
- when to use, 3.11
 
 
- FORCE clause
 
- 
- of COMMIT statement, F.15
 
- of ROLLBACK statement, F.71
 
 
- forward references
 
- 
- why not allowed, 6.5.1
 
 
- FREE SQL statement, 17.4.3, F.38
 
- free() function, 15.6.17
 
- 
- example of using, 15.6.17
 
 
- freeing
 
- 
- thread context, 11.4.2.4, F.18
 
 
- Frequently Asked Questions, 1.8
 
- full scan
 
- 
- description of, C.7
 
 
- function prototype
 
- 
- definition of, 10.5.8
 
 
- functions
 
- 
- cannot serve as host variables, 4.2.2.1
 
 
G
- generic documentation references
 
- 
- default values for options, 10.2.6
 
- demo directory, 1.6
 
- header files, location of, 5.5.4
 
- linking, 1.7
 
 
- GENXTB form
 
- 
- how to run, 20.12
 
- use with user exits, 20.12
 
 
- GENXTB utility
 
- 
- how to run, 20.12
 
- use with user exits, 20.12
 
 
- GET DESCRIPTOR statement, 14.5.3
 
- Globalization Support, 4.10, A.2.5
 
- GOTO action
 
- 
- in the WHENEVER statement, 9.8.2.5
 
- of WHENEVER directive, F.78
 
- result of, 9.8.2.5
 
 
- guidelines
 
- 
- for dynamic SQL, 13.6.5
 
- for separate precompilations, 2.5.1
 
- for the WHENEVER statement, 9.8.6
 
- for transactions, 3.14.1
 
 
H
- header files
 
- 
- location of, 5.5.4
 
- oraca.h, 5.5.4, 5.5.4
 
- sql2oci.h, 5.5.4, 5.5.4
 
- sqlapr.h, 5.5.4, 5.5.4
 
- sqlca.h, 5.5.4
 
- sqlcpr.h, 5.5.4
 
 
- HEADER precompiler option, 5.5, 10.5.25
 
- heap
 
- 
- definition of, 9.10.4
 
 
- HFILE OTT parameter, 19.5.2.7
 
- hints
 
- 
- COST, C.5.1
 
- for the ORACLE SQL statement optimizer, 6.7
 
- in DELETE statements, F.28
 
- in SELECT statements, F.73
 
- in UPDATE statements, F.76
 
 
- HOLD_CURSOR
 
- 
- precompiler option
 
- 
- used to improved performance, C.9.2.4
 
- what it affects, C.9
 
 
 
- HOLD_CURSOR option
 
- 
- of ORACLE Precompilers, F.8
 
 
- HOLD_CURSOR precompiler option, 10.5.25
 
- host arrays
 
- 
- advantages of, 8.1
 
- declaring, 8.2, 8.2
 
- dimensioning, 8.2
 
- in the DELETE statement, 8.7
 
- in the INSERT statement, 8.5
 
- in the SELECT statement, 8.4
 
- in the UPDATE statement, 8.6
 
- in the WHERE clause, 8.9
 
- matching sizes of, 8.3.1
 
- referencing, 8.2.1, 8.3.1
 
- restrictions on, 8.3.3, 8.4.7, 8.5.1, 8.6.1, 8.7.1
 
- used as input host variables, 8.3
 
- used as output host variables, 8.3
 
- using in dynamic SQL method 4, 15.6.19
 
- using in dynamic SQL statements, 13.11.1
 
- using the FOR clause with, 8.8
 
- using to improve performance, C.3
 
- when not allowed, 8.2.1
 
 
- host language
 
- 
- definition of, 2.1.1, 2.1.1.1
 
 
- host program
 
- 
- definition of, 2.1.1
 
 
- host structures
 
- 
- arrays in, 4.8.1
 
- declaring, 4.8
 
 
- host variables, 6.1.1
 
- 
- assigning values to, 2.1.5
 
- declarations, 18.2.1
 
- declaring, 2.3.3, 18.2.1
 
- definition of, 2.1.5
 
- dummy, 13.4
 
- host variable equivalencing, F.77
 
- in EXECUTE statement, F.33
 
- in OPEN statement, F.67
 
- in user exits, 20.4.1
 
- input versus output, 6.1.1
 
- must resolve to an address, 4.2.2.1
 
- overview of, 2.1.5
 
- purpose of, 6.1
 
- restrictions on, 4.2.2.1
 
- rules for naming, 2.3.8
 
- using in PL/SQL, 7.3
 
 
I
- I variable in SQLDA
 
- 
- how value is set, 15.3.5
 
- purpose of, 15.3.5
 
 
- IAP in SQL*Forms
 
- 
- purpose of, 20.13
 
 
- identifiers, ORACLE
 
- 
- how to form, F.3.5
 
 
- implicit connections, 3.2.5
 
- 
- multiple, 3.2.5.2
 
- single, 3.2.5.1
 
 
- IN OUT parameter mode, 7.1.4
 
- IN parameter mode, 7.1.4
 
- INAME precompiler option, 10.5.28
 
- INCLUDE
 
- 
- precompiler option, use of, 5.4.7
 
- using to include the SQLCA, 9.6.1
 
 
- INCLUDE option, 10.2.6.4
 
- INCLUDE precompiler option, E.1.11
 
- indexes
 
- 
- using to improve performance, C.7
 
 
- indicator arrays, 8.3.2
 
- 
- example of using, 8.3.2
 
- uses for, 8.3.2
 
 
- INDICATOR keyword, 4.3.1
 
- indicator variables
 
- 
- assigning values to, 6.2
 
- association with host variables, 6.2
 
- declarations, 18.2.1
 
- declaring, 4.3, 18.2.1
 
- definition of, 2.1.5
 
- function of, 6.2
 
- guidelines, 4.3.3
 
- interpreting values of, 6.2
 
- naming of, 4.8.4
 
- referencing, 4.3
 
- requirements for, 6.2
 
- used with multibyte character strings, 4.11.6
 
- using in PL/SQL, 7.4
 
- using to detect NULLs, 6.2
 
- using to detect truncated values, 6.2
 
- using to insert NULLs, 6.2.1
 
- using to return NULLs, 6.2.2
 
- using to test for NULLs, 6.2.4
 
- with structures, 4.8.4
 
 
- in-doubt transaction, 3.13
 
- INITFILE OTT parameter, 19.5.2.5
 
- INITFUNC OTT parameter, 19.5.2.6
 
- initialization function
 
- 
- calling, 19.3.2
 
- tasks of, 19.3.3
 
 
- input host variables
 
- 
- assigning values to, 6.1.1
 
- definition of, 6.1.1
 
- restrictions on, 6.1.1
 
- uses for, 6.1.1
 
- where allowed, 6.1.1
 
 
- INSERT SQL statement, F.40
 
- 
- examples, F.40
 
 
- INSERT statement
 
- 
- column list in, 6.3.2
 
- example of, 6.3.2
 
- INTO clause in, 6.3.2
 
- purpose of, 6.3.2
 
- requirements for, 6.3.2
 
- using host arrays in, 8.5
 
- VALUES clause in, 6.3.2
 
 
- inserting
 
- 
- rows into tables and views, F.40
 
 
- INTEGER datatype, 4.1.2.3
 
- interface
 
- 
- native, 5.12
 
- XA, 5.12
 
 
- internal datatypes
 
- 
- definition of, 2.1.6
 
 
- INTERVAL DAY TO SECOND datatype, 4.1.3.7
 
- INTERVAL YEAR TO MONTH datatype, 4.1.3.6
 
- INTO clause
 
- 
- for output host variables, 6.1.1
 
- in FETCH statements, 6.5.3
 
- in INSERT statements, 6.3.2
 
- in SELECT statements, 6.3.1
 
- of FETCH DESCRIPTOR statement, F.37
 
- of FETCH statement, F.36
 
- of SELECT statement, F.73
 
- used with FETCH instead of SELECT, 6.5.1
 
 
- intype file, 19.5.4
 
- 
- providing when running OTT, 19.2.4
 
- structure of, 19.5.4
 
 
- INTYPE OTT parameter, 19.5.2.2
 
- INTYPE precompiler option, 10.5.30
 
- invalid use
 
- 
- of precompiler preprocessor, 5.4.5.1
 
 
J
- joins
 
- 
- restriction on, 6.9.1
 
 
L
- L variable in SQLDA
 
- 
- how value is set, 15.3.3
 
- purpose of, 15.3.3
 
 
- label name
 
- 
- maximum length of, 9.8.2.5
 
 
- large objects, G.1
 
- Large Objects (LOBs), A.2.11
 
- LDA, 5.10
 
- 
- remote and multiple connections, 5.10.2
 
- setup for OCI version 8, 5.10.1
 
 
- lines
 
- 
- continuation, 2.3.9
 
- maximum length, 2.3.10
 
 
- LINES precompiler option, 10.5.31
 
- link
 
- 
- database link, 3.2.5.1
 
 
- linking, 1.7, 2.6
 
- 
- on UNIX, 1.8.11
 
- on VMS, 1.8.11
 
- two-task, 2.6
 
 
- Linking in an XA Library, E.1.8
 
- LNAME precompiler option, 10.5.32
 
- LNPROC
 
- 
- VMS link script, 1.8.11
 
 
- LOB APPEND SQL statement, F.41
 
- LOB APPEND statement, 16.4.1
 
- LOB ASSIGN SQL statement, F.42
 
- LOB ASSIGN statement, 16.4.2
 
- LOB CLOSE SQL statement, F.43
 
- LOB CLOSE statement, 16.4.3
 
- LOB COPY SQL statement, F.44
 
- LOB COPY statement, 16.4.4
 
- LOB CREATE TEMPORARY SQL statement, F.45
 
- LOB CREATE temporary statement, 16.4.5
 
- LOB DESCRIBE SQL statement, F.46
 
- LOB DISABLE BUFFERING SQL statement, F.47
 
- LOB DISABLE BUFFERING statement, 16.4.6
 
- LOB ENABLE BUFFERING SQL statement, F.48
 
- LOB ENABLE BUFFERING statement, 16.4.7
 
- LOB ERASE SQL statement, F.49
 
- LOB ERASE statement, 16.4.8
 
- LOB FILE CLOSE ALL SQL statement, F.50
 
- LOB FILE CLOSE ALL statement, 16.4.9
 
- LOB file close all statement, 16.4.9
 
- LOB FILE SET SQL statement, F.51
 
- LOB FILE SET statement, 16.4.10
 
- LOB FLUSH BUFFER SQL statement, F.52
 
- LOB FLUSH BUFFER statement, 16.4.11
 
- LOB FREE TEMPORARY SQL statement, F.53
 
- LOB FREE TEMPORARY statement, 16.4.12
 
- LOB LOAD FROM FILE statement, 16.4.13
 
- LOB LOAD SQL statement, F.54
 
- LOB OPEN SQL statement, F.55
 
- LOB OPEN statement, 16.4.14
 
- LOB READ SQL statement, F.56
 
- LOB READ statement, 16.4.15
 
- LOB TRIM SQL statement, F.57
 
- LOB WRITE SQL statement, F.58
 
- LOBs, G.1
 
- 
- access methods, 16.2.1
 
- BFILES, 16.1.2
 
- buffering system, 16.3.2
 
- external, 16.1.2
 
- initializing, 16.2.3
 
- internal, 16.1.1
 
- locators, 16.1.5
 
- locators in C, 16.2.2
 
- temporary, 16.1.6
 
 
- Location of Included Files, E.1.2
 
- location of the Pro*C/C++ Executable, E.1.9
 
- location transparency
 
- 
- how provided, 3.2.5.1
 
 
- lock
 
- 
- released by ROLLBACK statement, F.71
 
 
- LOCK TABLE statement
 
- 
- closes mall cursors, 3.11.2
 
- example of, 3.11.2
 
- locking tables with, 3.11.2
 
- NOWAIT parameter in, 3.11.2
 
- purpose of, 3.11.2
 
 
- locking, 3.11
 
- 
- definition of, 3.3
 
- explicit versus implicit, 3.11
 
- modes of, 3.3
 
- overriding default, 3.11
 
- privileges needed to obtain, 3.14.2
 
- table versus row, 3.11
 
- uses for, 3.11
 
- with FOR UPDATE OF, 3.11
 
- with the LOCK TABLE statement, 3.11.2
 
 
- logon, 3.1
 
- Logon Data Area, 5.10
 
- LONG datatype, 4.1.2.7
 
- LONG RAW datatype, 4.1.2.13
 
- LONG VARCHAR
 
- 
- datatype, 4.1.2.15
 
 
- LONG VARRAW datatype, 4.1.2.16
 
- LTYPE precompiler option, 10.5.33
 
- lvalue, 4.2
 
M
- M variable in SQLDA
 
- 
- how value is set, 15.3.8
 
- purpose of, 15.3.8
 
 
- macro precompiler options, 10.2.3
 
- malloc()
 
- 
- example of using, 15.6.14
 
- purpose of, 15.6.14
 
 
- MAXLITERAL
 
- 
- default value for, 2.3.11
 
 
- MAXLITERAL precompiler option, 10.5.35
 
- MAXOPENCURSORS
 
- 
- precompiler option
 
- 
- effect on performance, C.9.2.2
 
- for multiple cursors, 6.5.1
 
- specifying for separate precompilation, 2.5.1.2
 
- what it affects, C.9
 
 
 
- MAXOPENCURSORS precompiler option, 10.5.36
 
- metadata, 18.4.7
 
- micro precompiler options, 10.2.3
 
- Microsoft Visual C++
 
- 
- integrating Pro*C/C++ into, H
 
 
- migration
 
- 
- error message codes, A.3.11
 
- include files, 5.4.10
 
 
- migration from earlier releases, A.4
 
- MODE interaction with DBMS, 10.5.16
 
- MODE precompiler option, 10.5.37
 
- modes, parameter, 7.1.4
 
- msvcrt.lib runtime library, 1.7
 
- multithreaded applications, G.1
 
- 
- sample program, 11.5
 
- user-interface features
 
- 
- embedded SQL statements and directives, 11.4.2
 
 
 
N
- N variable in SQLDA
 
- 
- how value is set, 15.3.1
 
- purpose of, 15.3.1
 
 
- naming
 
- 
- of cursors, 6.5.1
 
- of database objects, F.3.5
 
- of select-list items, 15.2.1
 
- of SQL*Forms user exits, 20.14.1
 
 
- NATIVE
 
- 
- value of DBMS option, 10.5.15, 10.5.16
 
 
- native interface, 5.12
 
- navigational access sample program, 17.11
 
- nested tables, 18.1.1
 
- 
- creation, 18.1.1
 
 
- network
 
- 
- communicating over, 3.2.1
 
- protocols, 3.2.1
 
- reducing traffic, C.4
 
 
- new features, Preface
 
- NLS parameters, 4.10
 
- 
- NLS_CURRENCY, 4.10
 
- NLS_DATE_FORMAT, 4.10
 
- NLS_DATE_LANGUAGE, 4.10
 
- NLS_ISO_CURRENCY, 4.10
 
- NLS_LANG, 4.10
 
- NLS_LANGUAGE, 4.10
 
- NLS_NUMERIC_CHARACTERS, 4.10
 
- NLS_TERRITORY, 4.10
 
 
- NLS_CHAR precompiler option, 10.5.38, 10.5.39
 
- NLS_LOCAL precompiler option, 10.5.40
 
- node
 
- 
- current, 3.2.3
 
- definition of, 3.2.1
 
 
- NOT FOUND condition
 
- 
- in the WHENEVER statement, 9.8.1.3
 
- meaning of, 9.8.1.3
 
- of WHENEVER directive, F.78
 
 
- NOWAIT parameter
 
- 
- effect of, 3.11.2
 
- in LOCK TABLE statements, 3.11.2
 
- omitting, 3.11.2
 
 
- NULLs
 
- 
- definition of, 2.1.5
 
- detecting, 6.2
 
- handling in dynamic SQL method 4, 15.4.3
 
- hardcoding, 6.2.1
 
- inserting, 6.2.1
 
- restrictions on, 6.2.4
 
- returning, 6.2.2
 
- testing for, 6.2.4
 
- using the sqlnul() function to test for, 15.4.3
 
 
- null-terminated strings, 4.1.2.5.2
 
- NUMBER datatype, 4.1.2.2
 
- 
- using the sqlprc() function with, 15.4.2.1
 
 
- numeric expressions
 
- 
- cannot serve as host variables, 4.2.2.1
 
 
O
- object cache, 17.3
 
- OBJECT CREATE SQL statement, 17.5.3, F.59
 
- OBJECT DELETE SQL statement, 17.5.6, F.60
 
- OBJECT DEREF SQL statement, 17.5.4, F.61
 
- OBJECT FLUSH SQL statement, F.62
 
- OBJECT FLUSH SQL statements, 17.5.8
 
- OBJECT GET SQL statement, 17.6.2, F.63
 
- OBJECT RELEASE SQL statement, F.64
 
- OBJECT SET SQL statement, 17.6.1, F.65
 
- Object Type Translator (OTT), A.2.10, G.4
 
- 
- command line, 19.2.3
 
- command line syntax, 19.5.1
 
- creating types in the database, 19.2.1
 
- default name mapping, 19.5.7
 
- outtype file, 19.2.8
 
- parameters, 19.5.2
 
- providing an intype file, 19.2.4
 
- reference, 19.5
 
- restriction, 19.5.8
 
- using, 19, 19.2
 
- using with Pro*C/C++, 19.4
 
 
- Object Types, A.2.9
 
- OBJECT UPDATE SQL statement, 17.5.7, F.66
 
- objects
 
- 
- accessing with OCI, 19.3.1
 
- demonstration program, G.1
 
- introduction to, 17.1
 
- manipulating with OCI, 19.3.1
 
- persistent, 17.3.1
 
- persistent versus transient copies of, 17.3.1
 
- references to, 17.1.2
 
- support, 17
 
- transient, 17.3.1
 
- types, 17.1.1
 
- using object types in Pro*C/C++, 17.2
 
 
- OBJECTS precompiler option, 10.5.23, 10.5.41, 17.8.3
 
- OCI applications
 
- 
- using the OTT with, 19.3
 
 
- OCI calls, 1.8.3
 
- 
- embedding, 5.10
 
- in an X/A environment, 5.12.1.3
 
 
- OCI onblon() call
 
- 
- not used to connect, 5.10
 
 
- OCI orlon() call
 
- 
- not used to connect, 5.10
 
 
- OCI Release 8, 5.8
 
- 
- accessing and manipulating objects, 19.3.1
 
- embedding in Pro*C/C++, 5.9.3
 
- interfacing to, 5.9
 
- parameters in the environment handle, 5.8.2
 
- SQLLIB extensions, 5.8
 
 
- OCI types
 
- 
- declaring, 17.14.1
 
- manipulating, 17.14.3
 
- OCIDate, 17.14
 
- OCINumber, 17.14
 
- OCIRaw, 17.14
 
- OCIString, 17.14
 
- using in embedded SQL, 17.14.2
 
 
- OCIDate, 17.14
 
- 
- declaring, 17.14.1
 
 
- ocidfn.h, 5.10
 
- OCINumber, 17.14
 
- 
- declaring, 17.14.1
 
 
- OCIRaw, 17.14
 
- 
- declaring, 17.14.1
 
 
- OCIString, 17.14
 
- 
- declaring, 17.14.1
 
 
- ONAME precompiler option, 10.5.42
 
- OPEN CURSOR statement, 14.5.11
 
- OPEN DESCRIPTOR SQL statement, F.68
 
- OPEN SQL statement, F.67
 
- OPEN statement, 6.5.2
 
- 
- dependence on precompiler options, 6.5.2
 
- effect of, 6.5.2
 
- example of, 6.5.2
 
- examples, F.67
 
- purpose of, 6.5, 6.5.2
 
- use in dynamic SQL method 3, 13.9.3
 
- use in dynamic SQL method 4, 15.6.11
 
 
- opening
 
- 
- a cursor variable, 4.5.3
 
- cursors, F.67, F.68
 
 
- operators
 
- 
- C versus SQL, 2.3.12
 
- restrictions on, 2.3.12
 
 
- optimization approach, C.5.1
 
- optimizer hints, C.5.1
 
- 
- in C, 6.7
 
- in C++, 6.7.1, 12.2.1
 
 
- ORACA, 9.2.2
 
- 
- example of using, 9.10.6
 
- using to gather cursor cache statistics, 9.10.5.11
 
 
- ORACA precompiler option, 10.5.27, 10.5.34, 10.5.43, 10.5.44, 10.5.45, 10.5.50
 
- oraca.h header file, 5.5.4, 5.5.4
 
- ORACAID component, 9.10.5.1
 
- Oracle
 
- 
- datatypes, 2.1.6
 
- Forms Version 4, 20.5
 
- Open Gateway
 
- 
- using the ROWID datatype with, 4.1.2.9
 
 
- Toolset, 20.5
 
 
- Oracle Call Interface version 7, 5.10
 
- Oracle Communications Area, 9.10
 
- Oracle names
 
- 
- how to form, F.3.5
 
 
- Oracle Net
 
- 
- connecting to Oracle through, 3.2.2
 
- connection syntax, 3.2.1
 
- for concurrent connections, 3.2.2
 
- function of, 3.2.1
 
 
- orasql9.lib, H.2.2
 
- orasql9.lib library file, 1.7
 
- OTT (Object Type Translator), G.4
 
- OTT parameter TRANSITIVE, 19.5.2.12
 
- OTT parameters
 
- 
- CASE, 19.5.2.10
 
- CODE, 19.5.2.4
 
- CONFIG, 19.5.2.8
 
- ERRTYPE, 19.5.2.9
 
- HFILE, 19.5.2.7
 
- INITFILE, 19.5.2.5
 
- INITFUNC, 19.5.2.6
 
- INTYPE, 19.5.2.2
 
- OUTTYPE, 19.5.2.3
 
- SCHEMA_NAMES, 19.5.2.11
 
- USERID, 19.5.2.1
 
- where they appear, 19.5.3
 
 
- OUT parameter mode, 7.1.4
 
- output host variables
 
- 
- assigning values to, 6.1.1
 
- definition of, 6.1.1
 
 
- outtype file, 19.5.4
 
- 
- when running OTT, 19.2.8
 
 
- OUTTYPE OTT parameter, 19.5.2.3
 
- overhead
 
- 
- reducing, C.2
 
 
P
- PAGELEN
 
- 
- precompiler option, 10.5.46
 
 
- parameter modes, 7.1.4
 
- PARSE
 
- 
- precompiler option, 10.5.47
 
 
- parse error offset
 
- 
- how to interpret, 9.5.4
 
- use in error reporting, 9.5.4
 
 
- PARSE option, 10.2.6.5
 
- parsing dynamic statements
 
- 
- PREPARE statement, F.69
 
 
- password
 
- 
- defining, 3.1
 
 
- passwords
 
- 
- changing at runtime, A.2.4
 
 
- paths
 
- 
- checking, G.4
 
- checking the .pre files, G.5
 
 
- pcmake.bat, G.3.1
 
- pcscfg.cfg configuration file, 10.2.6.1
 
- performance
 
- 
- eliminating extra parsing to improve, C.9
 
- optimizing SQL statements to improve, C.5
 
- reasons for poor, C.1
 
- using embedded PL/SQL to improve, C.4
 
- using HOLD_CURSOR to improve, C.9.2.4
 
- using host arrays to improve, C.3
 
- using indexes to improve, C.7
 
- using RELEASE_CURSOR to improve, C.9.2.4
 
- using row-level locking to improve, C.8
 
 
- persistent copies of objects, 17.3.1
 
- persistent objects, 17.3.1
 
- placeholders
 
- 
- duplicate, 13.8.1, 13.12.2
 
- naming, 13.8.1
 
- proper order of, 13.8.1
 
- use in dynamic SQL statements, 13.4
 
 
- PL/SQL, 1.4
 
- 
- anonymous block
 
- 
- used to open a cursor variable, 4.5.3
 
 
- cursor FOR loop, 7.1.3
 
- description of, 1.4
 
- difference from SQL, 1.4
 
- executing a block using the AT clause, 3.2.4.1.2
 
- integration with database server, 7.1.2
 
- main advantage of, 1.4
 
- packages, 7.1.5
 
- PL/SQL tables, 7.1.6
 
- procedures and functions, 7.1.4
 
- RECORD type
 
- 
- cannot be bound to a C struct, 4.8.2
 
 
- relationship with SQL, 1.4
 
- setting SQLCA, 9.6.4
 
- user-defined records, 7.1.7
 
 
- PL/SQL blocks
 
- 
- embedded in precompiler programs, F.32
 
 
- pointer
 
- 
- definition of, 4.9
 
- to cursor variables
 
- 
- restrictions on, 4.5.1
 
 
 
- pointer variables
 
- 
- declaring, 4.9.1
 
- determining size of referenced value, 4.9.2
 
- referencing, 4.9.2
 
- referencing struct members with, 4.9.2
 
 
- .pre files
 
- 
- checking the paths, G.5
 
 
- precedence of precompiler options, 10.2.2, 10.2.2
 
- precision
 
- 
- definition of, 15.4.2.1
 
- using sqlprc() to extract, 15.4.2.1
 
- when not specified, 15.4.2.1
 
 
- precompilation
 
- 
- conditional, 2.4
 
- separate, 2.5, 2.5
 
 
- precompilation unit, 3.1, 10.3
 
- precompiled header files, 5.5, A.2.2
 
- 
- C++ restrictions, 5.5.5.2
 
- CODE option, 5.5.5.2, 5.5.5.2
 
- PARSE option, 5.5.5.2
 
 
- precompiler options
 
- 
- alphabetized list, 10.3, 10.5
 
- AUTO_CONNECT, 10.5.1
 
- case sensitivity, 10.1.1
 
- CHAR_MAP, 5.1.1, 10.5.2, A.2.6
 
- CLOSE_ON_COMMIT, 6.6.2, 10.5.4
 
- CODE, 10.5.8, 10.5.8
 
- COMP_CHARSET, 10.5.9, 10.5.9, 10.5.10, 10.5.10
 
- CONFIG, 10.5.3, 10.5.5, 10.5.6, 10.5.7, 10.5.11, 10.5.12, 10.5.14
 
- configuration files, 10.2.1
 
- CPP_SUFFIX, 10.5.13, 10.5.13
 
- DBMS, 10.5.15, 10.5.16
 
- DEF_SQLCODE, 10.5.17
 
- DEFINE, 10.5.18
 
- determining current value, 10.2.2
 
- DURATION, 10.5.20
 
- DYNAMIC, 14.4
 
- entering, 10.4
 
- entering on the command line, 10.4.1
 
- ERRORS, 10.5.21
 
- ERRTYPE, 10.5.22
 
- FIPS, 10.5.24
 
- HEADER, 10.5.25
 
- HOLD_CURSOR, 10.5.25, 10.5.26
 
- INAME, 10.5.28
 
- INCLUDE, 10.5.29, 10.5.29
 
- INTYPE, 10.5.30
 
- LINES, 10.5.31
 
- list of, 10.5
 
- LNAME, 10.5.32
 
- LTYPE, 10.5.33
 
- MAXLITERAL, 2.3.11, 10.5.35
 
- MAXOPENCURSORS, 10.5.36
 
- micro and macro, 10.2.3
 
- MODE, 10.5.37, 14.4
 
- NLS_CHAR, 10.5.38, 10.5.39
 
- NLS_LOCAL, 10.5.40
 
- OBJECTS, 10.5.23, 10.5.41
 
- ONAME, 10.5.42
 
- ORACA, 10.5.27, 10.5.34, 10.5.43, 10.5.44, 10.5.45, 10.5.50
 
- PAGELEN, 10.5.46
 
- PARSE, 10.5.47
 
- precedence, 10.2.2
 
- PREFETCH, 10.5.48
 
- RELEASE_CURSOR, 10.5.49
 
- scope, 10.2.5
 
- scope of, 10.3
 
- SELECT_ERROR, 10.5.51, 10.5.52
 
- specifying, 10.4.1
 
- SQLCHECK, 17.8.6
 
- syntax for, 10.4.1
 
- SYS_INCLUDE, 10.5.53
 
- THREADS, 10.5.54, 11.4.1
 
- TYPE_CODE, 10.5.55, 14.4
 
- UNSAFE_NULL, 10.5.56
 
- USERID, 10.5.57
 
- using, 10.5
 
- VARCHAR, 10.5.59
 
- VERSION, 10.5.60
 
 
- predefined symbols, 2.4.1
 
- PREFETCH precompiler option, 6.6.3, 10.5.48, A.3.3
 
- PREPARE SQL statement, F.69
 
- PREPARE statement, 14.5.5
 
- 
- effect on data definition statements, 13.6.2
 
- examples, F.69
 
- use in dynamic SQL, 13.8, 13.9.1
 
- use in dynamic SQL method 4, 15.6.6
 
 
- preprocessor
 
- 
- example, 5.6.2
 
- EXEC ORACLE directives, 5.6
 
 
- preprocessor directives
 
- 
- directives not supported by Pro*C, 5.4.2.1
 
 
- preprocessor, support of, 4.1
 
- private SQL area
 
- 
- association with cursors, 2.1.9
 
- definition of, 2.1.9
 
- opening of, 2.1.9
 
- purpose of, C.9.2.1
 
 
- Pro*C/C++
 
- 
- configuration files, 10.2.6.1
 
- integrating into Microsoft Visual C++, H
 
- library file, H.2.2
 
- linking, 1.7
 
 
- Pro*C/C++ Precompiler
 
- 
- common uses for, 1.2
 
- Globalization Support, 4.10
 
- new database types, 17.15
 
- new features, A
 
- object support in, 17
 
- runtime context, 5.8.1
 
- use of PL/SQL with, 7.2
 
- using OTT with, 19.4
 
 
- procedural database extension, 7.1.5
 
- program termination
 
- 
- normal versus abnormal, 3.9
 
 
- programming guidelines, 2.3
 
- project files, G.4
 
Q
- queries
 
- 
- association with cursors, 6.5
 
- forwarding, 3.2.5.1
 
- incorrectly coded, 6.3.1
 
- kinds of, 6.3
 
- requirements for, 6.3
 
- returning more than one row, 6.3
 
- single-row versus multirow, 6.3.1
 
 
R
- RAW datatype, 4.1.2.11
 
- READ ONLY parameter
 
- 
- in SET TRANSACTION statement, 3.10
 
 
- read-only transactions
 
- 
- description of, 3.10
 
- example of, 3.10
 
- how ended, 3.10
 
 
- record, 7.1.7
 
- REF
 
- 
- structure for, 17.13.1
 
 
- REF (reference to object), 17.1.2
 
- REFERENCE clause
 
- 
- in TYPE statement, 5.3.2.1
 
 
- reference semantics (ANSI dynamic SQL), 14.3.1
 
- references to objects (REFs)
 
- 
- declaring, 17.13.2
 
- using, 17.13
 
- using in embedded SQL, 17.13.3
 
 
- referencing
 
- 
- of host arrays, 8.2.1, 8.3.1
 
 
- REFs
 
- 
- declaring, 17.13.2, 17.13.2
 
- using, 17.13, 17.13
 
- using in embedded SQL, 17.13.3
 
 
- REGISTER CONNECT SQL statement, F.70
 
- RELEASE option, 3.9
 
- 
- if omitted, 3.9
 
- in COMMIT statement, 3.6
 
- in ROLLBACK statement, 3.8
 
- purpose of, 3.6
 
- restriction on, 3.8
 
 
- RELEASE_CURSOR
 
- 
- precompiler option
 
- 
- what it affects, C.9
 
 
 
- RELEASE_CURSOR option
 
- 
- of ORACLE Precompilers, F.8
 
- using to improve performance, C.9.2.4
 
 
- RELEASE_CURSOR precompiler option, 10.5.49
 
- remote database
 
- 
- declaration of, F.24
 
 
- reserved namespaces, B.2
 
- reserved words and keywords, B.1
 
- resource manager, 5.12
 
- restrictions
 
- 
- on AT clause, 3.2.4.1.3
 
- on Comments, 13.12.4
 
- on CURRENT OF clause, 6.9.1
 
- on declaring cursors, 6.5.1
 
- on FOR clause, 8.8.1
 
- on host arrays, 8.3.3, 8.4.7, 8.5.1, 8.6.1, 8.7.1
 
- on input host variables, 6.1.1
 
- on NULLs, 6.2.4
 
- on separate precompilation, 2.5.1.1
 
- on SET TRANSACTION statement, 3.10
 
- use of CURRENT OF clause, 8.3.3
 
 
- retrieving rows from a table
 
- 
- embedded SQL, F.73
 
 
- return codes
 
- 
- user exits, 20.8
 
 
- returning clause
 
- 
- DELETE, 6.3.4
 
- in INSERT, 6.4
 
- in UPDATE, 6.3.3
 
 
- returning clauses, 6.4
 
- roll back
 
- 
- to a savepoint, F.72
 
- to the same savepoint multiple times, F.71
 
 
- ROLLBACK SQL statement, F.71
 
- ROLLBACK statement, 3.8
 
- 
- effect of, 3.8
 
- ending a transaction, F.71
 
- example of, 3.8
 
- examples, F.71
 
- in error handling routines, 3.8
 
- purpose of, 3.8
 
- RELEASE option in, 3.8
 
- TO SAVEPOINT clause in, 3.8
 
- using in a PL/SQL block, 3.14.3
 
- where to place, 3.8
 
 
- rollbacks
 
- 
- automatic, 3.8
 
- function of, 3.4
 
- statement-level, 3.8.1
 
 
- row locks
 
- 
- acquiring with FOR UPDATE OF, 3.11.1
 
- advantage of, C.8
 
- using to improve performance, C.8
 
- when acquired, 3.11.1.1
 
- when released, 3.11.1.1
 
 
- ROWID
 
- 
- logical, 4.1.2.9, 4.7
 
- pseudocolumn, 3.12
 
- 
- using to mimic CURRENT OF, 3.12, 8.11
 
 
- pseudocolumns, 4.7, 4.7
 
- universal, 4.1.2.9, 4.1.2.9, 4.7, A.3.7
 
 
- ROWID datatype, 4.1.2.9
 
- rows
 
- 
- fetching from cursors, F.36, F.37
 
- inserting into tables and views, F.40
 
- updating, F.76
 
 
- rows-processed count
 
- 
- use in error reporting, 9.5.3
 
 
- runtime context
 
- 
- establishing, 5.8.1
 
- terminating, 5.8.1
 
 
- runtime type checking, 17.8.7
 
S
- S variable in SQLDA
 
- 
- how value is set, 15.3.7
 
- purpose of, 15.3.7
 
 
- sample database tables
 
- 
- DEPT table, 2.7
 
- EMP table, 2.7
 
 
- sample object type code, 17.11
 
- sample programs
 
- 
- ANSIDYN1, G.1, G.1
 
- ansidyn1.pc, 14.6.1
 
- ANSIDYN2, G.1, G.1
 
- ansidyn2.pc, 14.6.2
 
- building, G.3
 
- calldemo.sql, with sample9.pc, 7.7.2.1
 
- COLDEMO1, G.1, G.1
 
- coldemo1.pc, 18.5.5
 
- CPPDEMO1, G.1, G.1
 
- cppdemo1.pc, 12.3.1
 
- CPPDEMO2, G.1, G.1
 
- cppdemo2.pc, 12.3.2
 
- CPPDEMO3, G.1, G.1
 
- cppdemo3.pc, 12.3.3
 
- cursor variable demos, 4.5.7
 
- CV_DEMO, G.1, G.1
 
- cv_demo.pc, 4.5.7.2
 
- cv_demo.sql, 4.5.7.1
 
- default drive, G.4
 
- described, G.1
 
- EMPCLASS, G.1, G.1
 
- extp1.pc, 7.8.2
 
- how to precompile, 2.8, 2.9
 
- LOBDEMO1, G.1, G.1
 
- lobdemo1.pc, 16.6.3
 
- location of, 1.6, G.1
 
- MLTTHRD1, G.1, G.1
 
- NAVDEMO1, G.1, G.1
 
- navdemo1.pc, 17.11
 
- OBJDEMO1, G.1, G.1
 
- ORACA, G.1, G.1
 
- oraca.pc, 9.10.6, 9.10.6
 
- PLSSAM, G.1, G.1
 
- SAMPLE, G.1, G.1
 
- SAMPLE1, G.1, G.1
 
- SAMPLE10, G.1, G.1
 
- sample10.pc, 15.7
 
- SAMPLE11, G.1, G.1
 
- sample11.pc, 4.5.7.2
 
- SAMPLE12, G.1, G.1
 
- sample12.pc, 15.6.20
 
- sample1.pc, 2.8
 
- SAMPLE2, G.1, G.1
 
- sample2.pc, 4.8.5
 
- SAMPLE3, G.1, G.1
 
- sample3.pc, 8.4.5
 
- SAMPLE4, G.1, G.1
 
- sample4.pc, 5.3.5
 
- SAMPLE5, G.1, G.1
 
- sample5.pc, 20.11
 
- SAMPLE6, G.1, G.1
 
- sample6.pc, 13.7.1
 
- SAMPLE7, G.1, G.1
 
- sample7.pc, 13.8.2
 
- SAMPLE8, G.1, G.1
 
- sample8.pc, 13.9.6
 
- SAMPLE9, G.1, G.1
 
- sample9.pc, 7.7.2.1
 
- setting the path, G.4
 
- setting the path for the .pre files, G.5
 
- SQLVCP, G.1, G.1
 
- sqlvcp.pc, 4.4.7
 
- WINSAM, G.1, G.1
 
 
- sample tables
 
- 
- building, G.2
 
 
- SAVEPOINT SQL statement, F.72
 
- SAVEPOINT statement, F.72
 
- 
- example of, 3.7
 
- examples, F.72
 
- purpose of, 3.7
 
 
- savepoints
 
- 
- creating, F.72
 
- definition of, 3.7
 
- uses for, 3.7
 
- when erased, 3.7
 
 
- Scale
 
- 
- using SQLPRC to extract, F.77
 
 
- scale
 
- 
- definition of, 15.4.2.1, F.77
 
- using sqlprc() to extract, 15.4.2.1
 
- when negative, 15.4.2.1, F.77
 
 
- SCHEMA_NAMES OTT parameter, 19.5.2.11
 
- 
- usage, 19.5.6
 
 
- scope
 
- 
- of a cursor variable, 4.5.1
 
- of DECLARE STATEMENT directive, F.25
 
- of precompiler options, 10.3
 
- of the EXEC ORACLE statement, 10.4.2.2
 
- of WHENEVER statement, 9.8.5
 
 
- search condition
 
- 
- definition of, 6.3.5
 
- in the WHERE clause, 6.3.5
 
 
- select descriptor, 15.2.1, 15.2.1
 
- 
- information in, 13.10.2
 
 
- select list
 
- 
- definition of, 6.3.1
 
- number of items in, 6.3.1
 
- using the free() function for, 15.6.17
 
- using the malloc() function for, 15.6.14
 
 
- SELECT SQL statement, F.73
 
- select SQLDA
 
- 
- purpose of, 15.1.3
 
 
- SELECT statement, 6.3.1
 
- 
- clauses available for, 6.3.1.1
 
- embedded SQL examples, F.73
 
- example of, 6.3.1
 
- INTO clause in, 6.3.1
 
- purpose of, 6.3.1
 
- testing, 6.3.1.1
 
- using host arrays in, 8.4
 
- WHERE clause in, 6.3.1
 
 
- SELECT_ERROR
 
- 
- precompiler option, 6.3.1, 10.5.51, 10.5.52
 
 
- semantic checking
 
- 
- controlling with the SQLCHECK option, D.2
 
- definition of, D.1
 
- enabling, D.3.1
 
- with the SQLCHECK option, D.1
 
 
- separate precompilation
 
- 
- guidelines for, 2.5.1
 
- referencing cursors for, 2.5.1.1
 
- restrictions on, 2.5.1.1
 
- specifying MAXOPENCURSORS for, 2.5.1.2
 
- using a single SQLCA with, 2.5.1.3
 
 
- server
 
- 
- integration with PL/SQL, 7.1.2
 
 
- session
 
- 
- definition of, 3.3
 
 
- sessions
 
- 
- beginning, F.16
 
 
- SET clause
 
- 
- in UPDATE statements, 6.3.3
 
- purpose of, 6.3.3
 
- use of subqueries in, 6.3.3
 
 
- SET DESCRIPTOR statement, 14.5.4, F.74
 
- SET TRANSACTION statement
 
- 
- example of, 3.10
 
- purpose of, 3.10
 
- READ ONLY parameter in, 3.10
 
- requirements for, 3.10
 
- restrictions on, 3.10
 
 
- Size of an Integer and ROWID, E.1.5
 
- SQL
 
- 
- benefits of, 1.3
 
- Embedded SQL, 1.3
 
- nature of, 1.3
 
- need for, 1.3
 
 
- SQL Communications Area, 9.2.2
 
- 
- SQLCA, 9.6
 
 
- SQL Descriptor Area
 
- 
- SQLDA, 13.10.1, 15.2.1
 
 
- SQL directives
 
- 
- CONTEXT USE, 11.4.2.3, F.21
 
- DECLARE DATABASE, F.24
 
- DECLARE STATEMENT, F.25
 
- DECLARE TABLE, F.26
 
- DECLARE TYPE, F.27
 
- TYPE, F.75
 
- VAR, F.77
 
- WHENEVER, F.78
 
 
- SQL statements
 
- 
- ALLOCATE, F.4
 
- ALLOCATE DESCRIPTOR TYPE, F.5
 
- CACHE FREE ALL, F.6
 
- CALL, 7.7.2.3, F.7
 
- CLOSE, F.8
 
- COMMIT, F.15
 
- concerns when executing, 6.3
 
- CONNECT, F.16
 
- CONTEXT ALLOCATE, F.17, F.17
 
- CONTEXT FREE, F.18, F.18
 
- CONTEXT OBJECT OPTION GET, F.19
 
- CONTEXT OBJECT OPTION SET, F.20
 
- DEALLOCATE DESCRIPTOR, F.22
 
- DELETE, F.28
 
- DESCRIBE, F.29
 
- DESCRIBE DESCRIPTOR, F.30
 
- ENABLE THREADS, F.31
 
- executable versus directive, 2.1.1.1
 
- EXECUTE, F.33
 
- EXECUTE ... END-EXEC, F.32
 
- EXECUTE IMMEDIATE, F.35
 
- FETCH, F.36
 
- FETCH DESCRIPTOR, F.37
 
- for defining and controlling transactions, 3.4
 
- for manipulating a cursor, 6.3, 6.5
 
- FREE, F.38
 
- INSERT, F.40
 
- LOB APPEND, F.41
 
- LOB ASSIGN, F.42
 
- LOB CLOSE, F.43
 
- LOB COPY, F.44
 
- LOB CREATE, F.45
 
- LOB DESCRIBE, F.46
 
- LOB DISABLE BUFFERING, F.47
 
- LOB ENABLE BUFFERING, F.48
 
- LOB ERASE, F.49
 
- LOB FILE CLOSE, F.50
 
- LOB FILE SET, F.51
 
- LOB FLUSH BUFFER, F.52
 
- LOB FREE TEMPORARY, F.53
 
- LOB LOAD, F.54
 
- LOB OPEN, F.55
 
- LOB READ, F.56
 
- LOB TRIM, F.57
 
- LOB WRITE, F.58
 
- OBJECT CREATE, F.59
 
- OBJECT DELETE, F.60
 
- OBJECT DEREF, F.61
 
- OBJECT FLUSH, F.62
 
- OBJECT GET, F.63
 
- OBJECT RELEASE, F.64
 
- OBJECT SET, F.65
 
- OBJECT UPDATE, F.66
 
- OPEN, F.67
 
- OPEN DESCRIPTOR, F.68
 
- optimizing to improve performance, C.5
 
- PREPARE, F.69
 
- REGISTER CONNECT, F.70
 
- ROLLBACK, F.71
 
- rules for executing, C.5
 
- SAVEPOINT, F.72, F.72
 
- SELECT, F.73
 
- SET DESCRIPTOR, F.74
 
- summary of, F.1
 
- types of, 2.1.1.1
 
- UPDATE, F.76
 
 
- SQL*Forms
 
- 
- display error screen in, 20.8
 
- IAP constants in, 20.8.1
 
- returning values to, 20.8
 
- reverse return code switch in, 20.8
 
 
- SQL*Net
 
- 
- connecting using Version 2, 3.1.2
 
 
- SQL*Plus, 1.3
 
- 
- using to test SELECT statements, 6.3.1.1
 
- versus embedded SQL, 1.3
 
 
- SQL, dynamic, 2.1.3
 
- SQL_CURSOR, F.4
 
- SQL_SINGLE_RCTX
 
- 
- defined constant, 5.11
 
- definition of, 5.9
 
 
- sql2oci.h header file, 5.5.4, 5.5.4
 
- sqlald() function
 
- 
- example of using, 15.6.3
 
- purpose of, 15.2.4
 
- syntax for, 15.2.4
 
 
- sqlaldt() function
 
- 
- see SQLSQLDAAlloc, 5.11
 
 
- sqlapr.h header file, 5.5.4, 5.5.4
 
- SQLCA, 9.2.2, 9.5
 
- 
- components in, 9.6.3
 
- components set for a PL/SQL block, 9.6.4
 
- declaring, 9.6.1
 
- description of, 9.6
 
- explicit versus implicit checking of, 9.2.2
 
- including multiple times, 5.4.7
 
- overview of, 2.1.11
 
- SQLCABC component in, 9.6.3.2
 
- SQLCAID component in, 9.6.3.1
 
- sqlerrd, 9.6.3.6
 
- sqlerrd[2] component in, 9.6.3.6
 
- sqlerrmc component in, 9.6.3.4
 
- sqlerrml component in, 9.6.3.4
 
- sqlwarn, 9.6.3.7
 
- use in separate precompilations, 2.5.1.3
 
- using more than one, 9.6
 
- using with SQL*Net, 9.6
 
 
- sqlca.h
 
- 
- listing of, 9.6.2
 
- use of SQLCA_STORAGE_CLASS with, 2.5.1.3
 
 
- sqlca.h header file, 5.5.4
 
- SQLCAID component, 9.6.3.1
 
- SQLCDAFromResultSetCursor(), 5.11
 
- SQLCDAGetCurrent, 5.11
 
- sqlcdat()
 
- 
- see SQLCDAFromResultSetCursor(), 5.11
 
 
- SQLCHECK option
 
- 
- restrictions on, D.2
 
- what it affects, D.2
 
 
- SQLCHECK precompiler option, 17.8.6, D.3.1.1, D.3.1.2
 
- SQLCHECK support for objects, 17.8.6
 
- sqlclu() function
 
- 
- example of using, 15.6.17
 
- purpose of, 15.6.17
 
- syntax for, 15.6.17
 
 
- sqlclut() function
 
- 
- see SQLSQLDAFree(), 5.11
 
 
- SQLCODE
 
- 
- with MODE=ANSI, 10.5.37
 
 
- sqlcode
 
- 
- component in SQLCA, 9.2.2, 9.5.1
 
 
- SQLCODE status variable
 
- 
- declaring, 9.4
 
- when declared with the SQLCA, 9.4
 
- when used, 9.4
 
 
- sqlcpr.h, 9.7
 
- sqlcpr.h header file, 5.5.4
 
- sqlcurt() function
 
- 
- see SQLDAToResultSetCursor(), 5.11
 
 
- SQLDA
 
- 
- bind versus select, 13.10.3
 
- C variable in, 15.3.9
 
- definition of, 13.10.3
 
- F variable in, 15.3.6
 
- I variable in, 15.3.5
 
- information stored in, 13.10.3
 
- L variable in, 15.3.3
 
- M variable in, 15.3.8
 
- N variable in, 15.3.1
 
- purpose of, 13.10.1
 
- S variable in, 15.3.7
 
- struct, contents of, 15.2.3
 
- structure of, 15.3
 
- T variable in, 15.3.4
 
- use in dynamic SQL method 4, 15.2.1
 
- V variable in, 15.3.2
 
- X variable in, 15.3.10
 
- Y variable in, 15.3.11
 
- Z variable in, 15.3.12
 
 
- sqlda.h, 15.1.3
 
- SQLDAToResultSetCursor(), 5.11
 
- SQLEnvGet function in SQLLIB, 5.9.1
 
- SQLEnvGet(), 5.11
 
- sqlerrd
 
- 
- component, 9.5.4, 9.6.3.6
 
 
- sqlerrd[2] component, 9.5.3, 9.6.3.6
 
- 
- returns N or rows fetched, 8.4.3
 
- use with data manipulation statements, 8.4.2
 
 
- sqlerrm
 
- 
- component in the SQLCA, 9.2.2
 
 
- sqlerrmc component, 9.6.3.4
 
- sqlerrml component, 9.6.3.4
 
- SQLERROR
 
- 
- WHENEVER directive condition, F.78
 
 
- SQLERROR condition
 
- 
- in the WHENEVER statement, 9.8.1.2
 
- meaning of, 9.8.1.2
 
 
- SQLErrorGetText(), 5.11
 
- SQLExtProcError(), 5.11, 7.8.3
 
- sqlglm(), 9.7
 
- sqlglm() function, 9.7, 9.7
 
- 
- example of using, 9.7
 
- parameters of, 9.7
 
 
- sqlglmt()
 
- 
- see SQLErrorGetText, 5.11
 
 
- sqlgls() function, 9.9
 
- 
- example of use, 4.4.7
 
- sample program for, 9.9.2
 
- see SQLLIB
 
- 
- function SQLStmGetText, 4.4.7
 
 
 
- sqlglst() function
 
- 
- see SQLStmtGetText, 5.11
 
 
- sqlld2() function, 5.12.1.3
 
- sqlld2t() function
 
- 
- see SQLLDAGetName, 5.11
 
 
- SQLLDAGetName, 5.11
 
- sqlldat() function
 
- 
- see SQLCDAGetCurrent, 5.11
 
 
- SQLLIB
 
- 
- and embedded SQL, 2.1.2
 
- extensions for OCI interoperability, 5.8
 
- function
 
- 
- SQLCDAFromResultSetCursor, 5.11
 
 
- function SQLCDAGetCurrent, 5.11
 
- function SQLColumnNullCheck, 5.11
 
- function SQLDAFree, 5.11
 
- function SQLDAToResultSetCursor, 5.11
 
- function SQLEnvGet, 5.9.1, 5.11
 
- function SQLErrorGetText, 5.11
 
- function SQLExtProcError, 5.11, 7.8.3
 
- function SQLLDAGetName, 5.11
 
- function SQLNumberPrecV6, 5.11
 
- function SQLNumberPrecV7, 5.11
 
- function SQLRowidGet, 5.11
 
- function SQLStmtGetText(), 5.11
 
- function SQLSvcCtxGet, 5.9.2, 5.11
 
- function SQLVarcharGetLength, 4.4.6
 
- new names for functions, A.2.7
 
- new names for public functions, 5.11
 
 
- SQLLIB function
 
- 
- SQLSQLDAAlloc, 5.11
 
- SQLVarcharGetLength, 5.11
 
 
- sqlnul() function
 
- 
- example of using, 15.4.3
 
- purpose of, 15.4.3
 
- syntax for, 15.4.3
 
- use of with T variable, 15.3.4
 
 
- sqlnult() function
 
- 
- see SQLColumnNullCheck(), 5.11
 
 
- SQLNumberPrecV6, 5.11
 
- SQLNumberPrecV7, 5.11
 
- sqlpr2() function, 15.4.2.1
 
- sqlpr2t() function
 
- 
- see SQLNumberPrecV7, 5.11
 
 
- sqlprc() function, 15.4.2.1, 15.4.2.1
 
- sqlprct() function
 
- 
- see SQLNumberPrecV6, 5.11
 
 
- SQLRowidGet(), 5.11
 
- SQLSQLDAAlloc, 5.11
 
- SQLSQLDAFree(), 5.11
 
- SQLSTATE
 
- 
- class codes, 9.3.2
 
- declaring, 9.3.1
 
- mapping to Oracle errors, 9.3.2
 
- status codes, 9.3.2
 
- status variable, 9.2.1, 9.3
 
- using, 9.3.3
 
- values, 9.3.2
 
- with MODE=ANSI, 10.5.37
 
 
- SQLStmtGetText, 5.11
 
- SQLStmtGetText() function, G.1
 
- SQLSvcCtxGet function in SQLLIB, 5.9.2
 
- SQLSvcCtxGet(), 5.11
 
- SQLVarcharGetLength, 5.11
 
- sqlvcp() function, G.1
 
- sqlvcp() function, see SQLLIB
 
- 
- function SQLVarcharGetLength, 4.4.6
 
 
- sqlvcpt() function
 
- 
- see SQLVarcharGetLength, 5.11
 
 
- sqlwarn
 
- 
- flag, 9.6.3.7
 
 
- SQLWARNING
 
- 
- WHENEVER directive condition, F.78
 
 
- SQLWARNING condition
 
- 
- in the WHENEVER statement, 9.8.1.1
 
- meaning of, 9.8.1.1
 
 
- Standard Header Files, E.1.1
 
- statement-level rollback
 
- 
- description of, 3.8.1
 
- to break deadlocks, 3.8.1
 
 
- status codes
 
- 
- meaning of, 9.5.1
 
 
- status variables, 9.2.1
 
- STOP action
 
- 
- in the WHENEVER statement, 9.8.2.6
 
- of WHENEVER directive, F.78
 
- result of, 9.8.2.6
 
 
- stored procedures
 
- 
- program example, 7.7.2.1
 
 
- stored subprograms
 
- 
- calling, 7.7.2.1
 
- creating, 7.7.1
 
- packaged versus standalone, 7.7
 
- stored versus inline, 7.7
 
 
- STRING datatype, 4.1.2.5
 
- string host variables
 
- 
- declaring, 5.1.4
 
 
- Struct Component Alignment, E.1.4
 
- structs
 
- 
- array of, 8.10, A.2.1
 
- as host variables, 4.8
 
- C, using, 17.12
 
- for collection object types, 18.2
 
- generating C structs for a REF, 17.13.1
 
- pointers as host variables, 4.9.3
 
 
- structs (structures)
 
- 
- cannot be nested, 4.8.3
 
 
- structures (structs)
 
- 
- nesting not permitted for host, 4.8.3
 
 
- subqueries
 
- 
- definition of, 6.3.2.1
 
- example of, 6.3.2.1, 6.3.3
 
- uses for, 6.3.2.1
 
- using in the SET clause, 6.3.3
 
- using in the VALUES clause, 6.3.2.1
 
 
- symbols
 
- 
- defining, 2.4.1
 
 
- syntax checking
 
- 
- controlling with the SQLCHECK option, D.2
 
- definition of, D.1
 
 
- syntax diagram
 
- 
- description of, F.3
 
- how to read, F.3
 
- how to use, F.3
 
- symbols used in, F.3
 
 
- syntax, embedded SQL, 2.1.2
 
- SYS_INCLUDE
 
- 
- system header files in C++, 12.2.4
 
 
- SYS_INCLUDE precompiler option, 10.5.53
 
- SYSDBA/SYSOPER Privileges, A.3.8
 
- System Configuration File, E.1.10
 
- system configuration file, 10.2.2
 
- system failure
 
- 
- effect on transactions, 3.5
 
 
- System Global Area (SGA), 7.7
 
- system header files
 
- 
- specifying the location of, 12.2.4
 
 
- system-specific Oracle documentation, 1.8.11, 2.6, 3.2.2, 5.4.4, 5.12.1.4, 20
 
- system-specific reference, 4.1.2.3, 10.1.1, 10.2.1, 10.5.29, 10.5.53
 
T
- T variable in SQLDA
 
- 
- how value is set, 15.3.4
 
- purpose of, 15.3.4
 
 
- table locks
 
- 
- acquiring with LOCK TABLE, 3.11.2
 
- effect of, 3.11.2
 
- row share, 3.11.2
 
- when released, 3.11.2
 
 
- tables
 
- 
- inserting rows into, F.40
 
- nested, 18.1.1
 
- updating rows in, F.76
 
 
- terminal
 
- 
- encoding scheme, 4.10
 
 
- termination, program
 
- 
- normal versus abnormal, 3.9
 
 
- THREADS
 
- 
- precompiler option, 10.5.54, 11.4.1
 
 
- threads, F.17
 
- 
- allocating context, 11.4.2.2, F.17
 
- enabling, 11.4.2.1, F.31
 
- freeing context, 11.4.2.4, F.18
 
- use context, 11.4.2.3
 
 
- TIMESTAMP datatype, 4.1.3.3
 
- TIMESTAMP WITH LOCAL TIME ZONE datatype, 4.1.3.5
 
- TIMESTAMP WITH TIME ZONE datatype, 4.1.3.4
 
- TO clause
 
- 
- of ROLLBACK statement, F.71
 
 
- TO SAVEPOINT clause
 
- 
- in ROLLBACK statement, 3.8
 
- purpose of, 3.8
 
- restriction on, 3.8
 
 
- Toolset
 
- 
- Oracle, 20.5
 
 
- trace facility
 
- 
- function of, C.5.2
 
- using to improve performance, C.5.2
 
 
- transaction processing
 
- 
- overview of, 2.1.10
 
- statements used for, 2.1.10
 
 
- transaction processing monitor, 5.12
 
- transactions
 
- 
- committing, F.15
 
- contents of, 2.1.10, 3.5
 
- definition of, 2.1.10
 
- description of, 3.4
 
- distributed, F.71
 
- failure during, 3.5
 
- guarding databases with, 3.4
 
- guidelines for, 3.14.1
 
- how to begin, 3.5
 
- how to end, 3.5
 
- making permanent, 3.6
 
- read-only, 3.10
 
- rolling back, F.71
 
- subdividing with savepoints, 3.7
 
- terminating, 3.6
 
- undoing, 3.8
 
- undoing parts of, 3.7
 
- when rolled back automatically, 3.5, 3.8
 
 
- transient copies of objects, 17.3.1
 
- transient objects, 17.3.1
 
- TRANSITIVE OTT parameter, 19.5.2.12
 
- truncated values
 
- 
- detecting, 6.2, 7.4.2
 
 
- truncation error
 
- 
- when generated, 6.2.5
 
 
- tuning, performance, C.1
 
- two-task
 
- 
- linking, 2.6
 
 
- type checking at runtime, 17.8.7
 
- TYPE directive
 
- 
- examples, F.75
 
 
- type inheritance, 17.1.3
 
- 
- example, 17.10
 
- IS OF type operator, 17.1.3
 
- 
- example, 17.1.3, 17.1.3
 
 
- TREAT operator, 17.1.3
 
- 
- example, 17.1.3, 17.1.3
 
 
 
- TYPE SQL directive, F.75
 
- TYPE_CODE
 
- 
- precompiler option, 10.5.55
 
 
U
- undo a transaction, F.71
 
- Unicode character set, 5.1.5
 
- Unicode variables, A.3.1
 
- unions
 
- 
- cannot be nested in host structures, 4.8.3
 
- not permitted as host structures, 4.8.3
 
 
- universal ROWID, 4.1.2.9, 4.7, A.3.7
 
- UNIX
 
- 
- linking a Pro*C application under, 1.8.11
 
 
- UNSAFE_NULL precompiler option, 10.5.56
 
- UNSIGNED datatype, 4.1.2.14
 
- UPDATE SQL statement, F.76
 
- UPDATE statement
 
- 
- embedded SQL examples, F.76
 
- example of, 6.3.2.1
 
- purpose of, 6.3.2.1
 
- SET clause in, 6.3.3
 
- using host arrays in, 8.6
 
- WHERE clause in, 6.3.3
 
 
- updating
 
- 
- rows in tables and views, F.76
 
 
- use
 
- 
- thread context, 11.4.2.3, F.21
 
 
- user configuration file
 
- 
- to set precompiler options, 10.2.2
 
 
- User Exits, E.1.13
 
- user exits
 
- 
- calling from a SQL*Forms trigger, 20.6
 
- common uses for, 20.2
 
- example of, 20.9
 
- kinds of statements allowed in, 20.4
 
- linking into IAP, 20.13
 
- meaning of codes returned by, 20.8
 
- naming, 20.14.1
 
- passing parameters to, 20.7
 
- requirements for variables in, 20.4.1
 
- running the GENXTB form, 20.12
 
- running the GENXTB utility for, 20.12
 
- use of WHENEVER statement in, 20.8.2
 
 
- user session
 
- 
- definition of, 3.3
 
 
- user-defined record, 7.1.7
 
- user-defined stored function
 
- 
- used in WHERE clause, 6.3.5
 
 
- user-defined type equivalencing, F.75
 
- USERID option
 
- 
- when required, 10.5.57
 
 
- USERID OTT parameter, 19.5.2.1
 
- USERID precompiler option, 10.5.57
 
- 
- using with the SQLCHECK option, D.3.1.1
 
 
- usernames
 
- 
- defining, 3.1
 
 
- using C structures, 17.12
 
- USING clause
 
- 
- in CONNECT statement, 3.2.4.1
 
- in the EXECUTE statement, 13.8.1
 
- of FETCH statement, F.36
 
- of OPEN statement, F.67
 
- purpose of, 13.8.1
 
- using indicator variables in, 13.8.1
 
 
- using collection types, 17.13
 
- using dbstring
 
- 
- Oracle Net database specification string, F.16
 
 
- Using REFs in Embedded SQL, 17.13.3
 
V
- V variable in SQLDA
 
- 
- how value is set, 15.3.2
 
- purpose of, 15.3.2
 
 
- V7
 
- 
- value of DBMS option, 10.5.15, 10.5.16
 
 
- VALUES clause
 
- 
- in INS, 6.3.2
 
- of embedded SQL INSERT statement, F.40
 
- of INSERT statement, F.40
 
- use of subqueries in, 6.3.2.1
 
 
- VAR directive
 
- 
- examples, F.77
 
 
- VAR SQL directive, F.77
 
- VAR statement
 
- 
- syntax for, 5.3.1, 5.3.2
 
 
- VARCHAR
 
- 
- arrays of, 8.2
 
 
- VARCHAR datatype, 4.1.2.8
 
- VARCHAR precompiler option, 10.5.59
 
- VARCHAR pseudotype
 
- 
- requirements for using with PL/SQL, 7.3.3
 
 
- VARCHAR variables
 
- 
- advantages of, 4.4.1
 
- declaring, 4.4.1
 
- length member in, 4.4.1
 
- must be passed to a function by reference, 4.4.5
 
- specifying the length of, 4.4.1
 
- structure of, 4.4.1
 
- using macros to define length of, 5.4.1
 
- versus character arrays, 5.1.4.2
 
 
- VARCHAR2 datatype, 4.1.2.1, 5.3.3
 
- variables, 2.1.5
 
- 
- cursor, 4.5
 
- host, 18.2.1
 
- indicator, 18.2.1
 
 
- VARNUM datatype, 4.1.2.6
 
- VARRAW datatype, 4.1.2.12
 
- varrays
 
- 
- creation, 18.1.2
 
 
- varying length arrays, 18.1.2
 
- VERSION precompiler option, 10.5.60, 17.8.1
 
- views
 
- 
- inserting rows into, F.40
 
- updating rows in, F.76
 
 
- VMS
 
- 
- linking a precompiler application, 1.8.11
 
 
W
- warning flags
 
- 
- use in error reporting, 9.5.2
 
 
- WHENEVER directive
 
- 
- examples, F.78
 
 
- WHENEVER SQL directive, F.78
 
- WHENEVER statement
 
- 
- automatic checking of SQLCA with, 9.8.1
 
- CONTINUE action in, 9.8.2.1
 
- DO action in, 9.8.2.2
 
- DO BREAK action in, 9.8.2.3
 
- DO CONTINUE action in, 9.8.2.4
 
- examples of, 9.8.3
 
- GOTO action in, 9.8.2.5
 
- guidelines for, 9.8.6
 
- maintaining addressability for, 9.8.6.4
 
- new actions, A.2.8
 
- NOT FOUND condition in, 9.8.1.3
 
- overview of, 2.1.11
 
- scope of, 9.8.5
 
- SQLERROR condition in, 9.8.1.2
 
- SQLWARNING condition in, 9.8.1.1
 
- STOP action in, 9.8.2.6
 
- use in user exits, 20.8.2
 
- using to avoid infinite loops, 9.8.6.3
 
- using to handle end-of-data conditions, 9.8.6.2
 
- where to place, 9.8.6.1
 
 
- WHERE clause
 
- 
- host arrays in, 8.9
 
- if omitted, 6.3.5
 
- in DELETE statements, 6.3.4
 
- in SELECT statements, 6.3.1
 
- in UPDATE statements, 6.3.3
 
- purpose of, 6.3.5
 
- search condition in, 6.3.5
 
 
- WHERE CURRENT OF clause
 
- 
- CURRENT OF clause, 6.9
 
 
- WORK option
 
- 
- of COMMIT statement, F.15
 
- of ROLLBACK statement, F.71
 
 
X
- X variable in SQLDA
 
- 
- how value is set, 15.3.10
 
- purpose of, 15.3.10
 
 
- XA interface, 5.12
 
- X/Open, 5.12
 
- 
- application development, 5.12
 
 
Y
- Y variable in SQLDA
 
- 
- how value is set, 15.3.11
 
- purpose of, 15.3.11
 
 
Z
- Z variable in SQLDA
 
- 
- how value is set, 15.3.12
 
- purpose of, 15.3.12