Index

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 

A

abnormal termination, automatic rollback, E.6.5
active set, 4.4
changing, 4.4.2, 4.4.3
ALLOCATE command, E.4
allocating, cursors, E.4.2
ANSI/ISO SQL
compliance, 1.5
extensions, 6.7.28
application development process, 2.2
array, 9.1
array fetch, 9.5.1
array, elements, 9.3
array, operations, 2.1.8
ARRAYLEN statement, 5.5.1
ASACC option, 6.7.1
ASSUME SQLCODE option, 6.7.2
AT clause
CONNECT statement, 3.11.4
DECLARE CURSOR statement, 3.11.4
DECLARE STATEMENT statement, 3.11.4
EXECUTE IMMEDIATE statement, 3.11.4
of COMMITcommand, E.6.4
of DECLARE CURSOR command, E.6.4
of DECLARE STATEMENT command, E.10.5
of EXECUTE command, E.14.6
of EXECUTE IMMEDIATE command, E.16.5
of INSERTcommand, E.18.4
of SAVEPOINT command, E.22.5
of UPDATE command, E.24.4
restrictions, 3.11.4
AUTO_CONNECToption, 6.7.3
automatic logon, 3.11.3

B

batch fetch, 9.5.1
example, 9.5.1
number of rows returned, 9.5.2
bind descriptor, information in, 10.10.1
bind variable, 4.5.3, 10.10.1
binding, 10.5
blank padding, in multi-byte character strings, 3.10.6
block data subprogram, used by precompiler, 6.7.11

C

callback, user exit, 11.13.1
CHAR column, maximum width, 3.4.2
CHAR datatype
external, 3.4.14
internal, 3.4.2
CHAR_MAP precompiler option, 6.7.4
character strings, multi-byte, 3.10.1
CHARF data type specifier
using in TYPE statement, 3.8.4
using in VAR statement, 3.8.4
CHARF data type, external, 3.4.15
CHARF datat type specifier, 3.8.4
CHARZ data type, 3.4.16
chatracter sets, multi byte, 3.10
child cursor, 5.6
CINCR precompiler option, 6.7.5
CLOSE command, E.5
examples, E.5.6
CLOSE statement, 4.4.4, 4.5.5
example, 4.4.4
CLOSE_ON_COMMIT
precompiler option, 6.7.6
closing, cursors, E.5.1
CMAX precompiler option, 6.7.7
CMIN precompiler option, 6.7.8
CNOWAIT precompiler option, 6.7.9
code page, 3.9
CODE precompiler option, 6.7.10, 6.7.10
column, ROWLABEL, 3.4.12
comment, 10.12.5
COMMENT clause, of COMMIT command, E.6.4
commit, 7.2
automatic, 7.3
explicit versus implicit, 7.3
COMMIT command, E.6
ending a transaction, E.6.1
examples, E.6.5
COMMIT statement, 7.4
effects, 7.4
example, 7.4
RELEASE option, 7.4
using PL/SQL block, 7.12.3
where to place, 7.4
commiting, transactions, E.6.2
COMMON NAME option, 6.7.11
COMMON_PARSER precompiler option, 6.7.12
communication over a network, 3.11.1
COMP_CHARSET precompiler option, 6.7.13, 6.7.14
compilation, 6.10
compliance, ANSI/ISO, 1.6
concurency, 7.1
concurrent logons, 3.11
conditional precompilation, 6.8
defining symbols, 6.8.2
example, 6.8.1
CONFIG option, 6.4.7
CONFIG precompiler option, 6.7.15
configuration file
system versus user, 6.4.5
configuration files
advantages, 6.4.6
CONNECT statement
AT clause, 3.11.4
enabling a semantic check, D.3.2
USING clause, 3.11.4
connection
concurrent, 3.11.5
default versus non-default, 3.11.2
implicit, 3.11.6
CONTINUE action, 8.4.26
CONTINUE option, of WHENEVER statement, E.26.4
conventions, Preface
coventions
description, Preface
CPOOL precompiler option, 6.7.16
CPP_SUFFIX precompiler option, 6.7.17
CPP_SUFFIX precompiler options, 6.7.17
CREATE PROCEDURE statement, 5.7.1
creating, savepoints, E.22.1
CTIMEOUT precompiler option, 6.7.18
CURRENT of cluase, 4.4.5
example, 4.4.5
mimicking with ROWID, 9.9
of embedded SQL DELETE command, E.12.4
of embedded SQL UPDATE command, E.24.4
restrictions, 4.4.6
current row, 2.1.10
CURRVAL psuedocolumn, 3.4.11
cursor, 4.4
allocating, E.4
association with query, 4.4
child, 5.6
closing, E.5
declaring, 4.4.1
effects on performance, C.8.1
explicit versus implicit, 2.1.10
naming, 4.4.1
parent, 5.6
reopening, 4.4.2, 4.4.3
restricted scope of, 6.9.2
restrictions, 6.9.2
using for multiple row query, 4.4
using more than one, 4.4.1
cursor cache, 5.6, 5.6, 8.5.4, E.4.1
gathering stastics about, 8.5.16
cursor chache
purpose, C.8.4
cursor varaible
opening, 4.5.3
cursor variable
closing, 4.5.5
fetching from, 4.5.4
cursor, scope, 4.4.1
cursors
fetching rows from, E.17
opening, E.19

D

data definition language, 4.1.1
data definition language (DDL)
description, 4.1.1
data integrity, 7.1
data manipulation language (DML), 4.3
data type
host-languages, 3.6
internal versus external, 2.1.7
user defined, 3.6
data type conversion, 3.5
between internal and external datatypes, 3.5
data type equivalencing, 3.8
advantages, 3.8.1
example, 3.8.3
guidelines, 3.8.5
database link
defining, 3.11.7
using in DELETE command, E.12.4
using in delete command, E.12.4
using in UPDATE command, E.24.4
database links
creating a synonym, 3.11.7
Date data type
converting, 3.5.1
default format, 3.5.1
default value, 3.4.3
external, 3.4.3
internal, 3.4.3
internal format, 3.4.3
DB2_ARRAY precompiler option, 6.7.19
DBMS option, 6.7.20
deadlock, 7.1
breaking, 7.5.1
DECIMAL data type, 3.4.18
declarartion
host array, 9.3
host variable, 3.6
declaration
cursor, 4.4.1
indicator variable, 3.7
of ORACA, 8.5.1
SQLCA, 8.3.5
Declarative SQL statements, 2.1.2
declarative SQL statements
using in transactions, 7.3
declare CURSOR command, E.8.1
examples, E.8.6
declare CURSOR statement
declare DATABASE directive, E.9.1
declare section, 3.1
example, 3.1.1
using more than one, 3.1
DECLARE statement
example, 4.4.1
using in dynamic SQL method 3, 10.9.2
where to place, 4.4.1
declare STATEMENT command, E.10.1
example, E.10.6
scope of, E.10.5
DECLARE STATEMENT statement
AT clause, 3.11.4
example, 10.11
using in dynamic SQL, 10.9.2
when required, 10.11
DECLARE TABLE command, E.11.1
example, E.11.6
DECLARE TABLE statement
need for with AT clause, 3.11.4
using with the SQL CHECK option, D.3.3
declare TABLE statement
need for with AT clause, 3.11.4
DEF_SQLCODE precompiler option, 6.7.21
default connection, 3.11.2
default database, 3.11.2
default, setting of LITDELIM option, 6.7.40
DEFINE option, 6.7.22
definition, 2.1.10
delete cascaade, 8.4.17
DELETE command, E.12.1
embedded SQL examples, E.12.6
DELETE statement
using SQLERRD(3) filed, 9.10
WHERE clause, 4.3.6
DEPT table, 2.4
DESCRIBE command, E.13.1
example, E.13.6
DESCRIBE statement, using in dynamic SQL Method 4, 10.10.2
directory, 3.2
current, 3.2
path for INCLUDE files, 3.2
DISPLAY data type, 3.4.19
distributed procesing, 3.11
DO action, 8.4.27
DO option, of WHENEVER command, E.26.4
DTP model, 3.13
dummy host variables, 10.4
DURATION precompiler option, 6.7.24
dynamic PL/SQL, 10.12
dynamic SQL
advantages and disadvantages, 10.2
choosing the right method, 10.6.5
guidelines, 10.6.5
overview, 10.1
using PL/SQL, 10.12
when useful, 10.3
dynamic SQL Method 1
command, 10.7.1
dexcription, 10.7
example, 10.7.2
requirements, 10.7.1
dynamic SQL Method 2
commands, 10.6.2
description, 10.8
example, 10.8.2
requirements, 10.8
using PL/SQL, 10.12.2
using the EXECUTE statement, 10.6.2
using the PREPARE statement, 10.6.2
dynamic SQL method 2
using the DECLARE STATEMENT Statement, 10.11
dynamic SQL Method 3
compared to method 2, 10.9
description, 10.9
example, 10.9.6
requirements, 10.9
using PL/SQL, 10.12.3
using the CLOSE statement, 10.9.4
using the DECLARE statement, 10.9.2
using the FETCH statement, 10.9.4
using the OPEN statement, 10.9.3
using the PREPARE statement, 10.9.1
dynamic SQL method 3
using the DECLARE STATEMENT Statement, 10.11
dynamic SQL Method 4
overview, 10.10
using descriptors, 10.10
using SQLDA, 10.10.1
using the DESCRIBE statement, 10.10.2
when needed, 10.10
dynamic SQL method 4
using the DECLARE STATEMENT Statement, 10.11
dynamic SQL Method1
using EXECUTE IMMEDIATE, 10.7.1
using PL/SQL, 10.12.1
dynamic SQL Method4
using PL/SQL, 10.12.4
dynamic SQL statement, 10.1
binding of host variables, 10.5
how processed, 10.5
requirements, 10.4
using host arrays, 10.11.1
using placeholders, 10.4

E

embedded PL/SQL
advantages, 5.1
cursor for loops, 5.1.3
example, 5.3.1, 5.3.2
need for SQL check option, 5.2
need for USERID check option, 5.2
packages, 5.1.6
PL/SQL table, 5.1.7
requirements, 5.2
subprograms, 5.1.4
user-defines record, 5.1.8
using %TYPE, 5.1.2
where allowed, 5.1.8
embedded SQL
ALLOCATE command, E.4
CLOSE command, E.5
COMMIT command, E.6
CONNECTcommand, E.7
DECLARE cursor command, E.8
DECLARE CURSORcommand, E.8
DECLARE DATABASE command, E.9
DECLARE STATEMENT command, E.10
DECLARE TABLE command, E.11
DELETE command, E.12
DESCRIBE command, E.13
EXECUTE command, E.15
EXECUTE IMMEDIATE command, E.16
EXECUTEcommand, E.14
FETCH command, E.17
INSERT command, E.18
mixing with host-language statement, 2.1.3
OPEN command, E.19, E.20
referencing indicator variables, 3.7.2
SAVEPOINT command, E.22
SELECT command, E.23
UPDATE command, E.24
VAR command, E.25
versus interactive SQL, 2.1.3
WHENEVER command, E.26
embedded SQL statement
referencing host-langauage varaibles, 3.6.1
syntax, 2.1.3
embedding PL/SQL blocks in Oracle 7 precompiler programs, E.14.1
EMP table, 2.4
encoding scheme, 3.9
equivalencing, data type, 3.8
error detection, error reporting, E.26.5
error handling
alternatives, 8.2
benefits, 8.1
error handling
using the SQLCODE status variable, 8.3.6
overview, 2.1.12
SQLCA versus WHENEVER statement, 8.2.2
SQLCODE status variable, 8.3
using SQLCA, 8.4
using the ORACA structure, 8.5
using the ROLLBACK statement, 7.5
using the SQLGLM function, 8.4.21, 8.4.33
using the WHENEVER statement, 8.4.22
error message
available in SQLCA, 8.4.11
maximum length, 8.4.21
using in error reporting, 8.4.10
using the SQLGLM function, 8.4.21
error reporting
key components, 8.4.5
using error messages, 8.4.5
using status codes, 8.4.6
using the parse error offset, 8.4.9
using the rows-processed count, 8.4.8
using the WHENEVER command, 8.4.22
using warning flags, 8.4.7
errors options, 6.7.25
ERRTYPE
precompiler option, 6.7.26
exception, PL/SQL, 5.4.1
EXEC ORACLE DEFINE statement, 6.8, 6.8
EXEC ORACLE ELSE statement, 6.8
EXEC ORACLE ENDIF statement, 6.8
EXEC ORACLE IFDEF statement, 6.8
EXEC ORACLE IFNDEF statement, 6.8
EXEC ORACLE statement
inline, 6.4.2
scope of, 6.4.4
syntax for, 6.4.2
EXEC SQL clause, 2.1.3
EXEC TOOLS statements, 11.13
GET, 11.13.2
MESSAGE, 11.13.5
SET, 11.13.1
SET CONTEXT, 11.13.3, 11.13.4
executable SQL statement, 2.1.2, E.14, E.14
example, E.14.6
EXECUTE IMMEDIATE command, E.16
example, E.16.6
EXECUTE IMMEDIATE statement
AT clause, 3.11.4
EXECUTE statement, using in dynamic SQL Method 2, 10.8
EXPLAIN PLAN statement, using to improve performance, C.5.3
explicit logon, 3.11.3
multiple, 3.11.5
single, 3.11.4
external datatype, 3.4.13
CHAR, 3.4.14
CHARF, 3.4.15
CHARZ, 3.4.16
DATE, 3.4.17
DECIMAL, 3.4.18
DISPLAY, 3.4.19
FLOAT, 3.4.20
INTEGER, 3.4.20, 3.4.21
LONG, 3.4.22
LONG VARCHAR, 3.4.24
LONG VARRAW, 3.4.25
MLSLABEL, 3.4.26
NUMBER, 3.4.27
RAW, 3.4.28
ROWID, 3.4.29
STRING, 3.4.30
UNSIGNED, 3.4.31
VARCHAR, 3.4.32
VARCHAR2, 3.4.33
VARNUM, 3.4.34

F

features, new, A
FETCH command, E.17.1
examples, E.17.6
used after OPEN command, E.19.5
FETCH statement, 4.5.4, 4.5.4
example, 4.5.4
INTO clause, 4.5.4
using the SQERRD(3), 9.10
fetch, batch, 9.5.1
fetching, rows from cursors, E.17.1
FIPS option, 6.7.28
flag, warning, 8.4.7
FLOAT datatypes, 3.4.20
FOR clause, 9.7
example, 9.7, E.15.4
of embedded SQL INSERT command, E.18.4
restrictions, 9.7.1
using with HOST arrays, 9.7
FOR UPDATE clause, 4.5.3
FOR UPDATE OF clause, 7.9.2
FORCE clause
of COMMIT command, E.6.4
of ROLLBACK command, E.21.4
format mask, 3.5.1
FORMAT option, 6.7.29
forward reference, 4.4.1
full scan, C.6
function prototype
definition of, 6.7.10

G

GENXTB form, running, 11.10
globalizaton support, 3.9
multibyte charecter strings, 3.10
globalizaton support parameter
currency, 3.9
DATE FORMAT, 3.9
DATE LANGUAGE, 3.9
ISO CURRENCY, 3.9
LANGUAGE, 3.9
NUMERIC CHARACTERS, 3.9
SORT, 3.9
TERRITORY, 3.9
GOTO action, 8.4.28
GOTO optio, of WHENEVER command, E.26.4
guidelines
datatype equivalencing, 3.8.5
dynamic SQL, 10.6.5
host variable, 3.6.3
separate precompilation, 6.9.1
transactions, 7.12
user exit, 11.12
WHENEVER statement, 8.4.32
guielines
indicator variables, 3.7.3

H

HEADER precompiler option, 6.7.31, 6.7.31
heap, 8.5.4
hint, optimizer, C.5.1
hints
in DELETE statements, E.12.5
in SELECTstatement, E.23.5
in UPDATEstatement, E.24.5
HOLD CURSOR option
of Oracle precompilers, E.5.2
HOLD_CURSOR precompiler option, 6.7.32
host array, 9.1
advantages, 9.2
declaring, 9.3
dimensions, 9.3.1
maximum size, 9.3
referencing, 9.3.2
restrictions, 9.5.3, 9.5.6, 9.5.7
using dynamic SQL statement, 10.11.1
using in the DELETE statement, 9.5.8
using in the FOR clause, 9.7
using in the INSERT statement, 9.5.6
using in the SELECTstatement, 9.5
using in the UPDATE statement, 9.5.7
using in the WHERE clause, 9.8
using to improve performance, C.3
when not allowed, 9.4
host language, 2.1.1
host option, 6.7.33
host program, 2.1.1
host varaible
in OPEN command, E.19.4
multi-byte charecter strings, 3.10.4
undeclare, 3.1
using in EXEC TOOLS statement, 11.13
using in PL/SQL, 5.3
host variable, 4.1
assigning a value, 2.1.6
declaring, 3.6
dummy, 10.4
host variable equivalencing, E.25.1
in EXECUTE command, E.15.4
in OPEN command, E.19.1
output versus input, 4.1.1
overview, 2.1.6
host variables
using in user exit, 11.4.1
where allowed, 2.1.6
host-language datatype, 3.6

I

IAF GET statement
example, 11.4.2
specifying block and field names, 11.4.2
using user exit, 11.4.2
IAF PUT statement
example, 11.4.3
specifying block and filed names, 11.4.3
using user exit, 11.4.3
IAP, 11.11
implicit logon, 3.11.6
implicit logons
multiple, 3.11.8
single, 3.11.7
IMPLICIT_SVPT precompiler option, 6.7.34
in doubt transaction, 7.11
IN OUT parameter modes, 5.1.5
IN parameter mode, 5.1.5
INAME option, 6.7.35
when a file extension is required, 6.1
INCLUDE file, 3.2
INCLUDE option, 6.7.36
INCLUDE statement, 3.2
using to declare the ORACA, 8.5.1
using to declare the SQLCA, 8.4.1
index, using to improve performance, C.6
indiacator array, 9.1
indicator varaible, 4.2
indicator variable
guidelines, 3.7.3
referencing, 3.7
indicator variables
used to detetc truncated values, 4.2.2
used with multi-byte charecter strings, 3.10.7
using in PL/SQL, 5.4
using to handle nulls, 4.2.1, 4.2.4, 4.2.4
using to test for nulls, 4.2.6
input host variable
restrictions, 4.1.1
where allowed, 4.1.1
INSERT command, E.18
embedded SQL examples, E.18.6
INSERT of no rows, 8.4.14
cause of, 8.3.10
INSERT statement, 4.3.3
column list, 4.3.3
example, 4.3.4
INTO clause, 4.3.3
using SQLERRD(3), 9.10
inserting, rows into tables and views, E.18.1
INTEGER datatype, 3.4.21
interface
native, 3.13
XA, 3.13
internal datatypes
CHAR, 3.4.2
DATE, 3.4.3
definition, 3.4
LONG, 3.4.4
LONG RAW, 3.4.4
MLSLABEL, 3.4.6
NUMBER, 3.4.7
RAW, 3.4.8
ROWID, 3.4.9
VARCHAR2, 3.4.10
INTO clause, 4.1.1, 4.5.4
FETCH statement, 4.4.3
INSERT statement, 4.3.3
of FETCH command, E.17.4
of SELECT statement, E.23.4
SELECT statement, 4.3.1
INTYPE precompiler option, 6.7.38
IRECLEN option, 6.7.37

J

julian date, 3.4.3

K

keywords, B.2

L

language support, 1.1.1
LDA, 3.12.1
LEVEL pseudocolumn, 3.4.11
LINES precompiler option, 6.7.39
link, database, 3.11.7
linking, 6.10
LITDELIM option, 6.7.40
purpose, 6.7.40
LNAME option, 6.7.41
location transparency, 3.11.7
LOCK TABLE statement, 7.9.3
example, 7.9.3
using the NOWAIT parameter, 7.9.3
lock, released by ROLLBACK statement, E.21.5
locking, 7.1, 7.9
explicit versus implicit, 7.9
modes, 7.1
privileges needed, 7.12.2
using the FOR UPDATE of clause, 7.9.1
using the LOCK TABLE statement, 7.9.3
logon
concurrent, 3.11
explicit, 3.11.3
Logon Data Area (LDA), 3.12
LONG datatype
comapred with CHAR, 3.4.4
external, 3.4.22
internal, 3.4.2
restriction, 3.4.4
LONG RAW column, maximum width, 3.4.5
LONG RAW datatype
compared with LONG, 3.4.5
conversion, 3.5.2
external, 3.4.5
internal, 3.4.23
LONG VAR CHAR datatype, 3.4.24
LONG VARRAW datatype, 3.4.25
LRECLEN option, 6.7.42
LTYPE option, 6.7.43

M

MAX_ROW_INSERT precompiler option, 6.7.46
MAXLITERAL option, 6.7.44
MAXOPENCURSORS option, 6.7.45
using for separate precompilation, 6.9.1
what it affects, C.8
MLSLABEL data type, 3.4.6
MODE option, 6.7.47
effect on OPEN, 4.4.2
mode, parameter, 5.1.5
monitor, transaction processing, 3.13
multi-byte character sets, 3.10.4
MULTISUBPROG option, 6.7.48

N

namespaces, reserved by Oracle, B.4
naming conventions
cursor, 4.4.1
SQL* Forms user exit, 11.12.1
naming of database objects, E.3.5
NATIVE
value of DBMS option, 6.7.19
native interface, 3.13
NATIVE_TYPES precompiler option, 6.7.49
network
communicating over, 3.11.1
protocol, 3.11.1
reducing network traffic, C.4
NEXTVAL, psuedocolumn, 3.4.11
nibble, 3.5.2
NIST, compliance, 1.6
NLS_CHAR precompiler option, 6.7.50
NLS_LOCAL precompiler option, 6.7.51
node, definition, 3.11.2
NOT FOUND condition
WHENEVER clause, E.26.4
notation
convention, Preface
NOWAIT
parameter, 7.9.3
using the LOCK TABLE statement, 7.9.3
null
definition, 2.1.6
detecting, 4.2.2
hardcode, 4.2.3
inserting, 4.2.3
restrictions, 4.2.6
retrieving, 4.2.5
testing for, 4.2.6
null-terminated string, 3.4.30
NUMBER data type
external, 3.4.27
internal, 3.4.7

O

OBJECTS precompiler option, 6.7.27, 6.7.52
OCI
declaring LDA, 3.12
embedding calls, 3.12
ONAME option, 6.7.53
OPEN command, E.19
examples, E.19.6
OPEN statement, 4.4.2
example, 4.4.2
using in dynamic SQL Method 3, 10.9.3
OPEN_CURSORS parameter, 5.6
OPEN-FOR statement, 4.5.3
opening, cursors, E.19
optimizer hint, C.5.1
options, precompiler, 6.3
ORACA, 8.5
declaring, 8.5.1
enabling, 8.5.2
example, 8.5.23
fields, 8.5.5
gathering cursor cache statistics, 8.5.16
ORACABC field, 8.5.7
ORACAID field, 8.5.6
ORACCHF flag, 8.5.8
ORACOC field, 8.5.19
ORADBGF flag, 8.5.9
ORAHCHF flag, 8.5.10
ORAHOC field, 8.5.17
ORAMOC field, 8.5.18
ORANEX field, 8.5.22
ORANOR field, 8.5.20
ORANPR field, 8.5.21
ORASFNMC field, 8.5.14
ORASFNML field, 8.5.14
ORASLNR field, 8.5.15
ORASTXTC field, 8.5.13
ORASTXTF flag, 8.5.11
ORASTXTL field, 8.5.13
using more than one, 8.5
ORACA option, 6.7.54
ORACABC field, 8.5.7
ORACAID field, 8.5.6
ORACCHF flag, 8.5.8
Oracle Call Interface, 3.12
Oracle Communications Area, 8.5
Oracle datatypes, 2.1.7
Oracle Forms, using the EXEC TOOLS statements, 11.13
Oracle identifier, how to form, E.3.5
Oracle indentifiers, how to form, E.3.5
Oracle keywords, B.2
Oracle namespaces, B.4
Oracle Open Gateway, using ROWID datatype, 3.4.29
Oracle Precompilers
advantages, 1.2
function, 1.2
globalization support, 3.9
language support, 1.1.1
new features, A
running, 6.1
using PL/SQL, 5.2
using with OCI, 3.12
Oracle reserved words, B.1
Oracle Toolset, 11.13
ORACOC field, 8.5.19
ORADBGF flag, 8.5.9
ORAHCHF flag, 8.5.10
ORAHOC field, 8.5.17
ORAMOC field, 8.5.18
ORANEX field, 8.5.22
ORANOR field, 8.5.20
ORANPR field, 8.5.21
ORASFNMC field, 8.5.14
ORASFNML field, 8.5.14
ORASLNR field, 8.5.15
ORASTXTC field, 8.5.13
ORASTXTF flag, 8.5.11
ORASTXTL field, 8.5.13
ORECLEN option, 6.7.55
OUT parameter mode, 5.1.5
OUTLINE precompiler option, 6.7.56
OUTLNPREFIX precompiler option, 6.7.57
output host variable, 4.1.1

P

PAGELEN option, 6.7.58
parameter modes, 5.1.5
parent cursor, 5.6
PARSE
precompiler option, 6.7.59
parse, 10.5
parse error offset, 8.4.9
parsing dynamic statements, PREPARE command, E.20
performance
improving, C.2
reasons for poor, C.1
placeholder, duplicate, 10.8
naming, 10.8.1
using in dynamic SQL statements, 10.4
plan, execution, C.5
PL/SQL, 1.4
advantages, 1.4
and the SQLCA, 8.4.20
blocks, embedded in Oracle7 precompiler programs, E.14.1
cursor FOR loop, 5.1.3
exception, 5.4.1
integrating with server, 5.1.2
package, 5.1.6
relationship with SQL, 1.4
reserved words, B.3
subprogram, 5.1.4
user-defined record, 5.1.8
PL/SQL table, 5.1.7
precision, 3.4.7
precompilation, 6.2
conditional, 6.8
separate, 6.9
precompilation unit, 6.5
precompiler, 1.1
precompiler command, 6.1
optional arguments of, 6.3
required arguments, 6.1
precompiler directives, EXEC SQL DECLARE DATABASE, E.9
precompiler options
abbrevating name, 6.3
ASACC, 6.7.1
ASSUME_SQLCODE, 6.7.2
AUTO_CONNECT, 6.7.3
CHAR_MAP, 6.7.4
CINCR, 6.7.5
CLOSE_ON_COMMIT, 6.7.6
CMAX, 6.7.7
CMIN, 6.7.8
CNOWAIT, 6.7.9
CODE, 6.7.10, 6.7.10
COMMON_NAME, 6.7.11
COMMON_PARSER, 6.7.12, 6.7.12
COMP_CHARSET, 6.7.13, 6.7.13, 6.7.13, 6.7.14, 6.7.14, 6.7.14
CONFIG, 6.4.7, 6.7.15, 6.7.15, 6.7.15
CPOOL, 6.7.16
CPP_SUFFIX, 6.7.17, 6.7.17
CTIMEOUT, 6.7.18
DB2_ARRAY, 6.7.19
DBMS, 6.7.20
DEF_SQLCODE, 6.7.21
DEFINE, 6.7.22
displaying, 6.3, 6.6
DURATION, 6.7.24
entering from a configuration file, 6.4.5
entering inline, 6.4.2
entering on the command line, 6.4.1
ERRORS, 6.7.25
ERRTYPE, 6.7.26
FIPS, 6.7.28
FORMAT, 6.7.29
Globalization Support_LOCAL, 6.7.30
HEADER, 6.7.31, 6.7.31
HOLD_CURSOR, 6.7.32, 6.7.32
HOST, 6.7.33
IMPLICIT_SVPT, 6.7.34
INAME, 6.7.35
INCLUDE, 6.7.36
INTYPE, 6.7.38
IRECLEN, 6.7.37
LINES, 6.7.39
LITDELIM, 6.7.40
LNAME, 6.7.41
LRECLEN, 6.7.42
LTYPE, 6.7.43
MAX_ROW_INSERT, 6.7.46
MAXLITERAL, 6.7.44
MAXOPENCURSORS, 6.7.45
MODE, 6.7.47
MULTISUBPROG, 6.7.48
NATIVE_TYPES, 6.7.49
NLS_CHAR, 6.7.50
NLS_LOCAL, 6.7.51
OBJECTS, 6.7.27, 6.7.52
ONAME, 6.7.53
ORACA, 6.7.54
ORECLEN, 6.7.55
OUTLINE, 6.7.56
OUTLNPREFIX, 6.7.57
PAGELEN, 6.7.58
PARSE, 6.7.59
PREFETCH, 6.7.60
RELEASE_CURSOR, 6.7.61
respecifying, 6.5
RUNOUTLINE, 6.7.62
scope of, 6.5
SELECT_ERROR, 6.7.63
specifying, 6.4
SQLCHECK, 6.7.64
STMT_CACHE, 6.7.65
syntax for, 6.4.1
THREADS, 6.7.66
TYPE_CODE, 6.7.67
UNSAFE_NULL, 6.7.68
USERID, 6.7.69
using, 6.7
VARCHAR, 6.7.71, 6.7.71
VERSION, 6.7.72
XREF, 6.7.73
PREFETCH precompiler option, 6.7.60
PREPARE command, E.20
examples, E.20.6
PREPARE statement
effect on data definition statements, 10.6.2
using in dynamic SQL, 10.8, 10.9.1
private SQL area
association with cursors, 2.1.10
opening, 2.1.10
purpose, C.8.4
Program Global Area (PGA), 5.6
program termination, 7.7
programming language support, 1.1.1
pseudocolumn, 3.4.11
CURRVAL, 3.4.11
LEVEL, 3.4.11
NEXTVAL, 3.4.11
ROWID, 3.4.11
ROWNUM, 3.4.11
SYSDATE, 3.4.11
UID, 3.4.11
USER, 3.4.11
pseudotype, VARCHAR, 3.6.2

Q

query, 4.3
association with cursor, 4.4
multirow, 4.3
single-row versus multirow, 4.3.1

R

RAW column, maximum width, 3.4.8
RAW datatype
compared with CHAR, 3.4.8
converting, 3.5.2
external, 3.4.28
internal, 3.4.8
restrictions, 3.4.8
RAWTOHEX function, 3.5.2
read consistency, 7.1
READ ONLY parameter, using in SET TRANSACTION, 7.8
read-only transaction, 7.8
ending, 7.8
example, 7.8
record, user-defined, 5.1.8
reference
host array, 9.3.2
host variable, 3.6
indicator variable, 3.7
RELEASE option, 7.7
COMMIT statement, 7.4
omitting, 7.7
restrictions, 7.6
ROLLBACK statement, 7.5
RELEASE_CURSOR option, 6.7.61
of Oracle Precompilers, E.5.5
using to improve performance, C.8.6
what it affects, C.8
remote database, declaration of, E.9.1
reserved words, B.1
PL/SQL, B.3
resource manager, 3.13
retrieving rows from a table, embedded SQL, E.23.1
return code, 11.7
roll back
to a savepoint, E.22.1
to the same savepoint multiple times, E.21.5
rollabck
statement-level, 7.5.1
rollback
automatic, 7.5
purpose, 7.2
ROLLBACK command, E.21
ending a transaction, E.21.5
examples, E.21.6
rollback segment, 7.1
ROLLBACK Statement, 7.5
ROLLBACK statement
effects, 7.5
example, 7.5
RELEASE option, 7.5
TO SAVEPOINT clause, 7.6
using in a PL/SQL block, 7.12.3
using in error-handling routines, 7.5
where to place, 7.5
rolling back, transactions, E.21
row lock
acquiring with FOR UPDATE OF, 7.9.1
using to improve performance, C.7
when acquired, 7.9.2
when released, 7.9.2
ROWID datatype
external, 3.4.29
internal, 3.4.9
ROWID pseudocolumn, 3.4.11
using to mimic CURRENT OF, 7.10, 9.9
ROWLABEL column, 3.4.12
ROWNUM pseudocolumn, 3.4.11
rows
fetching from cursors, E.17
inserting into tables and views, E.18
updating, E.24
rows-processed count, 8.4.17
using in error reporting, 8.4.8
RUNOUTLINE precompiler option, 6.7.62

S

sample database table
DEPT table, 2.4
EMP table, 2.4
savepoint, 7.6
SAVEPOINT command, E.22
example, E.22.5
SAVEPOINT statement, 7.6
example, 7.6
savepoint, when erased, 7.6
SAVEPOINTS parameter, 7.6
savepoints, creating, E.22
scale, 3.4.7
definition of, 3.8.2
when negative, 3.8.2
scope
of DECLARE STATEMENT command, E.10.5
of precompiler options, 6.5
of the EXEC ORACLE statement, 6.4.4
WHENEVER statement, 8.4.31
search condition, 4.3.7
using in the WHERE clause, 4.3.7
SELECT command, E.23
embedded SQL examples, E.23.6
select descriptor, information in, 10.10
select list, 4.3.1
SELECT statement, 4.3.1
available clauses, 4.3.2
example, 4.3.1
INTO clause, 4.3.1
using host arrays, 9.5
using the SQLERRD(3) field, 9.10
SELECT_ERROR option, 4.3.1, 6.7.63
semantic checking, D.1
enabling, D.3.1
using the SQLCHECK option, D.2
separate precompilation, 6.9
guidelines, 6.9.1
restrictions, 6.9.2
session, 7.1
sessions, beginning, E.7
SET clause, 4.3.5
using a subquery, 4.3.5
SET TRANSACTION statement, 7.8
example, 7.8
READ ONLY parameter, 7.8
restrictions, 7.8
snapshots, 7.1
SQL code, returned by SQLGLS function, 8.4.33
SQL Communications Area, 8.4
SQL Descriptor Area, 10.10.1
SQL standards conformance, 1.6.1
SQL statement
controlling transactions, 7.2
executable versus declarative, 2.1.2
optimizing to improve performance, C.5
static versus dynamic, 2.1.4
using to control a cursor, 4.3, 4.4
using to manipulate Oracle data, 4.3
SQL*Connect, using ROWID datatype, 3.4.29
SQL*Forms
Display Error screen, 11.7
IAP Constants, 11.7.1
returning values to, 11.7
Reverse Return Code switch, 11.7
user exit, 11.1
SQL*Net
concurrent logons, 3.11
connection syntax, 3.11.1
function of, 3.11.1
using to connect to Oracle, 3.11
SQL*Plus, 1.3
SQL, summary of commands, E.1
SQL_CURSOR, E.4.2
SQL92
conformance, 1.6.1
deprecated feature, 8.2.1
minimum requirement, 1.6.1
SQLCA, 3.3, 8.4
components set for a PL/SQL block, 8.4.20
declaring, 8.4.1
explicit versus implicit checking, 8.2.2
fields, 8.4.11
interaction with Oracle, 3.3
using in separate precompilations, 6.9.1
using more than one, 8.4
using with SQL*Net, 8.4
SQLCABC filed, 8.4.13
SQLCAID field, 8.4.12
SQLCHECK option, 6.7.64
restrictions, D.2
using the DECLARE TABLE statement, D.3.1
using to check syntax, D
SQLCODE field, 8.4.14
SQLCODE status variable, 8.3
SQLCODE variable, interpreting values of, 8.3.10
SQLERRD, 8.4.17
SQLERRD(3) field, 9.10
purpose, 8.4.8
using with the FETCH statement, 9.10
SQLERRD(3) filed
using with batch fetch, 9.5.2
SQLERRD(5) field, 8.4.17
SQLERRMC field, 8.4.15
SQLERRML field, 8.4.15
SQLERROR condition, 8.4.24
SQLERROR, WHENEVER command condition, E.26.4
SQLFC parameter, 8.4.33
SQLGLM function, 8.4.21
example, 8.4.21
SQLGLS function
parameters, 8.4.33
restrictions, 8.4.33
SQL codes returned by, 8.4.33
syntax, 8.4.33
using to obtain SQL text, 8.4.33
SQLIEM function
replacement for, 11.13
using in user exit, 11.7.2
SQLLDA routine, 3.12.1
SQLSTATE status variable, 8.2
class code, 8.3.11
coding scheme, 8.3.11
declaring, 8.3.7
error handling
SQLSTATE status variable, 8.3
interpreting values, 8.3.11
predefined status code and conditions, 8.3.11
subclass code, 8.3.11
SQLSTM parameter, 8.4.33
SQLWARN, 8.4.18
SQLWARN flags, 8.4.18
SQLWARNING condition, 8.4.23
SQLWARNING, WHENEVER command condition, E.26.4
statement-level rollback, 7.5.1
breaking deadlocks, 7.5.1
status code, 8.4.6
STMLEN parameter, 8.4.33
STMT_CACHE
precompiler option, 6.7.65
STOP action, 8.4.29
STOP option, of WHENEVER command, E.26.4
stored subprogram, 5.7
calling, 5.7.2
creating, 5.7.1
packaged versus standalone, 5.7
stored versus inline, C.4
using to improve performance, C.4
STRING datatype, 3.4.30
subprogram, PL/SQL, 5.1.4, 5.7
subquery, 4.3.4
example, 4.3.4, 4.3.5
using in the SET clause, 4.3.5
using in the VALUES clause, 4.3.4
syntactic checking, D.1
syntax diagram
description of, E.3
how to read, E.3
how to use, E.3
symbols used in, E.3
syntax, embedded SQL, 2.1.3
SYSDATE function, 3.4.11
system failure, effect on transactions, 7.3
System Global Area (SGA), 5.7

T

table lock
acquiring with LOCK TABLE, 7.9.3
exclusive, 7.9.3
row share, 7.9.3
when released, 7.9.3
tables
inserting rows into, E.18
updating rows in, E.24
THREADS
precompiler option, 6.7.66
TO clause, of ROLLBACK command, E.21.4
TO SAVEPOINT clause, 7.6
restrictions, 7.6
using in ROLLBACK statement, 7.6
trace facility, using to improve performance, C.5.3
transaction, 7.2
subdividing with savepoints, 7.6
undoing, 7.5
undoing parts of, 7.6
when rolled back automatically, 7.3, 7.5
transaction processing
overview, 2.1.11
statements used, 2.1.11
transaction, contents, 2.1.11, 7.3
guidelines, 7.12
how to begin, 7.3
how to end, 7.3
in-doubt, 7.11
making permanent, 7.4
transaction, read-only, 7.8
transactions
committing, E.6
distributed, E.21.8
rolling back, E.21
truncated value, 5.4.2
detecting, 4.2.2
truncation error, when generated, 4.2.7
tuning, performance, C.1
TYPE statement, using the CHARF datatype specifier, 3.8.4
TYPE_CODE
precompiler option, 6.7.67

U

UID function, 3.4.11
unconditional delete, 8.4.18
undo a transaction, E.21.1
UNSAFE_NULL option, 6.7.68, A.1
UNSIGNED datatype, 3.4.31
update cascade, 8.4.17
UPDATE command, E.24
embedded SQL examples, E.24.6
UPDATE statement, 4.3.5
example, 4.3.5
SET clause, 4.3.5
using host arrays, 9.5.7
using SQLERRD(3), 9.10
updating, rows in tables and views, E.24
user exit, 11.1
calling from a SQL*Forms trigger, 11.5
common uses, 11.2
example, 11.8
guidelines, 11.12
linking into IAP, 11.11
meaning of codes returned by, 11.7
naming, 11.12.1
passing parameters, 11.6
requirements for variables, 11.4.1
running the GENXTB form, 11.10
statements allowed in, 11.4
steps in developing, 11.3
using EXEC IAF statements, 11.4.2
using EXEC TOOLS statements, 11.13
using the WHENEVER statement, 11.7.3
USER function, 3.4.11
user session, 7.1
user-defined datatype, 3.6
user-defined record, 5.1.8
USERID option, 6.7.69
using with the SQLCHECK option, D.3.1
USING clause
CONNECT statement, 3.11.4
of FETCH command, E.17.4
of OPEN command, E.19.4
using in the EXECUTE statement, 10.8.1
using indicator variables, 10.8.1
using dbstring, SQL*Net database id specification, E.7.4

V

V7
value of DBMS option, 6.7.19
VALUES clause
INSERT statement, 4.3.3
of embedded SQL INSERT command, E.18.4
of INSERT command, E.18.4
using a subquery, 4.3.4
VAR command, E.25
examples, E.25.6
VAR statement, 3.8.2
parameters, 3.8.2
using the CHARF datatype specifier, 3.8.4
VARCHAR datatype, 3.4.32
VARCHAR pseudotype, 3.6.2, 5.3.3
maximum length, 3.6.2
using with PL/SQL, 5.3.3
VARCHAR, precompiler option, 6.7.71
VARCHAR2 column
maximum width, 3.4.10
VARCHAR2 datatype
external, 3.4.33
internal, 3.4.10
variable, 2.1.6
VARNUM datatype, 3.4.34
example of output value, 3.8.5
VARRAW, 3.4.35
VARRAW datatype, 3.4.35
VERSION precompiler option, 6.7.72
views
inserting rows into, E.18.1
updating rows in, E.24.1

W

warning flag, 8.4.7
when empty, 4.4.3
WHENEVER command, E.26
example, E.26.6
WHENEVER statement, 8.4.22
check SQLCA automatically, 8.4.22
CONTINUE action, 8.4.26
DO action, 8.4.27
examples, 8.4.30
GOTO action, 8.4.28
guidelines, 8.4.32
handling end-of-data conditions, 8.4.32
maintaining addressability, 8.4.32
NOT FOUND condition, 8.4.25
overview, 2.1.12
scope, 8.4.31
SQLERROR condition, 8.4.24
SQLWARNING condition, 8.4.23
STOP action, 8.4.29
where to place, 8.4.32
WHERE Clause
DELETE statement, 4.3.6
WHERE clause, 4.3.7
of DELETE command, E.12.4
of UPDATE command, E.24.4
search condition, 4.3.7
SELECT statement, 4.3.1
UPDATE statement, 4.3.5
using host arrays, 9.8
WORK option
of COMMIT command, E.6.4
of ROLLBACK command, E.21.4

X

XA interface, 3.13
X/Open application, 3.13
XREF option, 6.7.73