Oracle Call Interface Programmer's Guide, Volumes 1 & 2
Release 8.0

A58234-01

Library

Product

Contents

Prev

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  Y  Z 


Symbols

,, 12-1

A

aborting OCI calls, 2-31
ADO. See attribute descriptor object
advanced queueing
dequeue function, 13-8
description, 7-40
enqueue function, 13-11
examples, 13-12
OCI and, 7-40
OCI descriptors for, 7-40
OCI functions for, 7-40
OCI vs. PL/SQL, 7-41
allocation duration
example, 11-13
of objects, 11-13
application failover
callback example, 7-38
callback registration, 7-37
OCI callbacks, 7-36
applications
linking, 2-32
AQ. See advanced queueing.
arguments
attributes, 6-17
array binds, 10-3
array defines, 10-6
arrays
skip parameter for, 5-19
arrays of structures, 5-17
indicator variables, 5-20
OCI calls used, 5-20
skip parameters, 5-18
atomic nullness, 8-28
attribute descriptor object, 9-23
attributes
of handles, 2-11
of objects, 8-17
of parameter descriptors, 6-5
of parameters, 6-5
authentication
of user, 7-11

B

BFILE
datatype, 3-20
BFILE datatype, 3-20
bind handle
attributes, B-19
description, 2-10
bind operation, 4-5, 5-2, 10-2
associations made, 5-3
example, 5-6
LOBs, 5-10
named data types, 5-10, 10-2
named vs. positional, 5-4
OCI array interface, 5-4
OCI_DATA_AT_EXEC mode, 5-11
PL/SQL, 5-5
positional vs. named, 5-4
ref cursor variables, 5-12
REFs, 5-10, 10-3
static arrays, 5-10
steps used, 5-6
binding
arrays, 10-3
OCINumber, 10-8
PL/SQL placeholders, 2-32
summary, 5-12
BLOB
datatype, 3-21
BLOB datatype, 3-21
branches
detaching, 7-7
resuming, 7-7
buffering LOB operations, 7-28

C

C datatypes
manipulating with OCI, 9-5
cache functions
server roundtrips, E-4
callback registration
application failover, 7-37
callbacks
application failover, 7-36
for LOB operations, 7-31
for reading LOBs, 7-32
for writing LOBs, 7-34
from external procedures, 7-35
LOB streaming interface, 7-31
parameter modes, 13-52
canceling OCI calls, 2-31
CASE OTT parameter, 12-27
CHAR
external datatype, 3-16
character set form, 5-25
character set ID, 5-25
CHARZ
external datatype, 3-17
checkerr() function
code listing, 2-25
CLOB
datatype, 3-21
CLOB datatype, 3-21
CODE OTT parameter, 12-26
coherency
of object cache, 11-4
collections
attributes, 6-13
describing, 6-2
columns
attributes, 6-15
commit, 2-23
in object applications, 11-13
one-phase for global transactions, 7-8
two-pahse for global transactions, 7-8
complex object retrieval, 8-21
implementing, 8-23
navigational prefetching, 8-25
complex object retrieval (COR) descriptor, 2-15
attributes, B-27
complex object retrieval (COR) handle, 2-10
attributes, B-26
CONFIG OTT parameter, 12-27
configuration files
and the OTT, 12-5
consistency
of object cache, 11-4
copying objects, 8-31
COR, see complex object retrieval
creating objects, 8-31

D

data definition language
SQL statements, 1-4
data manipulation language
SQL statements, 1-5
data structures
new for 8.0, 2-5
database connection
for object applications, 8-10
datatype
conversions, 3-22
external, 3-4, 3-7
internal, 3-4, 3-5
Oracle, 3-2
datatype code
internal, 3-5
datatype mapping
Oracle methodology, 9-5
datatype mapping and manipulation functions
server roundtrips, E-6
datatype mappings, 12-9
datatypes
BFILE, 3-20
BLOB, 3-21
CLOB, 3-21
FILE, 3-20
for piecewise operations, 7-17
manipulating with OCI, 9-5
mapping from Oracle to C, 9-3
NCLOB, 3-21
DATE
external datatype, 3-14
DDL. See data definition language
default file name extensions, 12-35
default name mapping, 12-35
define
arrays, 10-6
define handle
attributes, B-22
description, 2-10
define operation, 4-11, 5-13, 10-4
example, 5-14
LOBs, 5-16
named data types, 5-16, 10-4
piecewise fetch, 5-17
PL/SQL output variables, 5-17
REFs, 5-16, 10-4
static arrays, 5-17
steps used, 5-14
defining
OCINumber, 10-8
deletes
positioned, 2-31
describe
object describe code example, D-55
of collections, 6-2
of packages, 6-2
of sequences, 6-2
of stored functions, 6-2
of stored procedures, 6-2
of synonyms, 6-2
of tables, 6-2
of types, 6-2
of views, 6-2
describe handle
attributes, B-24
description, 2-10
describe operation, 4-8
implicit, 4-9
server roundtrips, E-5
descriptor, 2-12
complex object retrieval, 2-15
parameter, 2-14
ROWID, 2-15
snapshot, 2-13
descriptor objects, 9-23
descriptors
allocating, 2-18
detaching branches, 7-7
DML. See data manipulation language
DML with RETURNING clause
See RETURNING clause
duration
of objects, 11-13
durations
example, 11-13

E

embedded objects
fetching, 8-15
embedded SQL, 1-7
mixing with OCI calls, 1-7
encapsulated interfaces, F-2
environment handle
attributes, B-3
description, 2-8
error codes
navigational functions, 14-5
error handle
description, 2-8
error handling
example, 2-25
errors
handling, 2-25
handling in object applications, 8-32
ERRTYPE OTT parameter, 12-27
executing SQL statements, 4-6
execution
against multiple servers, 4-5
modes, 4-7
execution snapshots, 4-7
extensions
default file name, 12-35
external datatype, 3-4
CHAR, 3-16
CHARZ, 3-17
DATE, 3-14
FLOAT, 3-11
INTEGER, 3-11
LOBs, 3-19
LONG, 3-13
LONG RAW, 3-15
LONG VARCHAR, 3-16
LONG VARRAW, 3-16
MLSLABEL, 3-18
named data types, 3-18
NUMBER, 3-10
RAW, 3-15
REF, 3-19
ROWID, 3-14
SQLT_BLOB, 3-19
SQLT_CLOB
external datatype
SQLT_NCLOB, 3-19
SQLT_NTY, 3-18
SQLT_REF, 3-19
STRING, 3-12
UNSIGNED, 3-16
VARCHAR, 3-13
VARCHAR2, 3-9
VARNUM, 3-13
VARRAW, 3-15
external datatypes, 3-7
conversions, 3-22
external procedure functions
return codes, 16-2
with_context type, 16-2
external procedures
OCI callbacks, 7-35

F

fetch
piecewise, 7-16, 7-20
fetch operation, 4-12
LOB data, 4-12
setting prefetch count, 4-12
FILE
associating with OS file, 7-27
datatype, 3-20
locator, 7-26
FLOAT
external datatype, 3-11
flushing, 11-10
object changes, 8-14
flushing objects, 11-10
freeing objects, 8-31, 11-8
functions
attributes, 6-7

G

global transactions, 7-4
GTRID. See transaction identifer

H

handle attributes, 2-11
reading, 2-11
setting, 2-11
handles, 2-6
advantages of, 2-8
allocating, 2-7, 2-18
bind handle, 2-10
C datatypes, 2-6
child freed when parent freed, 2-8
define handle, 2-10
describe handle, 2-10
environment handle, 2-8
error handle, 2-8
freeing, 2-7
hierarchy of, 2-7
server handle, 2-9
service context handle, 2-8
statement handle, 2-10
transaction handle, 2-9
types, 2-6
user session handle, 2-9
HFILE OTT parameter, 12-26

I

indicator variable, 2-29
arrays of structures, 5-20
for named data types, 2-28
for REF, 2-28
named data type defines, 10-5
PL/SQL OUT binds, 10-5
REF defines, 10-5
with named data type bind, 10-3
with REF bind, 10-3
indicator variables
for named data types, 2-30
for REFs, 2-30
INITFILE OTT parameter, 12-26
INITFUNC OTT parameter, 12-26
initialization function
calling, 12-20
tasks of, 12-22
insert
piecewise, 7-16, 7-18
INTEGER
external datatype, 3-11
internal datatype, 3-4, 3-5
datatype codes, 3-5
internal datatypes
conversions, 3-22
intype file, 12-29
providing when running OTT, 12-8
structure of, 12-29
INTYPE OTT parameter, 12-25

K

keywords, C-2

L

linking, 2-32
issues, A-7
modes, A-7
support for single-task, A-9
lists
attributes, 6-19
LOB, 7-24
binding, 5-10
creating, 7-26
defining, 5-16
external data type, 3-19
fetching data, 4-12
locator, 2-13
modifying, 7-26
OCI functions, 7-28
OCI operations on, 7-24
LOB attributes
of transient objects, 7-27
LOB buffering, 7-28
code example, D-96
LOB functions
server roundtrips
LOB locator, 2-13, 7-24
attributes, B-25
LOB operations
buffering, 7-28
callbacks, 7-31
code example, D-76
locator, 2-12
for LOB datatype, 2-13, 7-24
locking, 11-12
locking objects, 11-12
LONG
external datatype, 3-13
LONG RAW
external datatype, 3-15
LONG VARCHAR
external datatype, 3-16
LONG VARRAW
external datatype, 3-16

M

marking objects, 11-9
MDO. See method descriptor object
meta-attributes
of objects, 8-17
of persistent objects, 8-17
of transient objects, 8-20
method descriptor object, 9-23
migration
7.x to 8.0, A-4
MLSLABEL
external datatype, 3-18
multiple servers
executing statement against, 4-5
multi-threaded development
basic concepts, 7-14

N

named data type
binding and defining, 10-6
indicator variable for, 2-28
named data types
binding, 5-10, 10-2
defining, 5-16, 10-4
definition, 3-18
external data types, 3-18
indicator variables, 2-30
namespaces
reserved, C-11
navigation, 11-16
navigational functions
error codes, 14-5
return values, 14-4
terminology, 14-4
NCHAR
issues, 5-25
NCLOB
datatype, 3-21
NCLOB datatype, 3-21
nested table
element ordering, 9-21
new features, F-2
benefits, F-8
enhancements, F-2
introduction, F-2
no-op
definition, 14-57
null indicator struct
generated by OTT, 8-9
null undicator struct, 8-28
nullness
atomic, 8-28
of objects, 8-28
NULLs
detecting, 2-30
inserting, 2-29
inserting into database, 2-28
inserting using indicator variables, 2-28
NUMBER
external datatype, 3-10

O

object
allocation duration, 11-13
array pin, 8-13
attributes
manipulating, 8-13
duration, 11-13
LOB attribute of, 7-27
memory layout of instance, 11-15
nullness, 8-28
pin count, 8-28
pin duration, 11-13
pinning, 8-12
secondary memory, 11-15
top-level memory, 11-15
unpinning, 8-28
object application
database connection, 8-10
object applications
commit, 11-13
rollback, 11-13
object cache, 11-2
coherency, 11-4
consistency, 11-4
initializing, 8-10
loading objects, 11-6
memory parameters, 11-5
operations on, 11-6
removing objects, 11-6
setting the size of, 11-5
object functions
See navigational functions.
server roundtrips, E-4
object identifier
for persistent objects, 8-5
object reference, 8-32
object reference. See REF
object retrieval
code example, D-11
object runtime environment
initializing, 8-10
object type translator
sample output, 8-9
See OTT
objects
accessing with OCI, 12-19
attributes, 8-17
client-side cache, 11-2
copying, 8-31
creating, 8-31
flushing, 11-10
flushing changes, 8-14
freeing, 8-31, 11-8
lifetime, 14-2
LOB attributes of transient objects, 7-27
locking, 11-12
manipulating with OCI, 12-19
marking, 8-14, 11-9
memory management, 11-2
meta-attributes, 8-17
navigation, 11-16
simple, 11-16
OCI object application structure, 8-4
persistent, 8-5, 8-6
pinning, 11-6
refreshing, 11-10
terminology, 14-2
transient, 8-5, 8-7
types, 8-5, 14-2
unmarking, 11-10
unpinning, 11-8
use with OCI, 8-3
obsolescent OCI functions OCI functions
obsolescent, A-2
obsolete OCI functions OCI functions
obsolete, A-4
OCI
object support, 1-8
overview, 1-2
parts of, 1-10
release 8.0 new features, 1-10
OCI application
compiling, 1-11
general structure, 2-3
initialization example, 2-19
linking, 1-11
steps, 2-16
structure, 2-3
structure using objects, 8-4
terminating, 2-24
with objects
initializing, 8-10
OCI applications
using the OTT with, 12-18
OCI environment
initializing for objects, 8-10
OCI functions
canceling calls, 2-31
return codes, 2-25, 2-27
OCI navigational functions, 11-18
flush functions, 11-19
mark functions, 11-19
meta-attribute accessor functions, 11-19
miscellaneous functions, 11-20
naming scheme, 11-18
pin/unpin/free functions, 11-18
OCI process
initializing, 2-17
initializing for objects, 8-10
modes, 2-17
OCI program. See OCI application
OCI relational functions
guide to reference entries, 13-7, 16-3
quick reference, 13-3
OCI Release 8
accessing and manipulating objects, 12-19
OCI_ATTR_ALLOC_DURATION
environment handle attribute, B-4
OCI_ATTR_CACHE
attribute, 6-15
OCI_ATTR_CACHE_MAX_SIZE
environment handle attribute, B-3
OCI_ATTR_CACHE_OPT_SIZE
environment handle attribute, B-3
OCI_ATTR_CHAR_COUNT
bind handle attribute, B-19
define handle attribute, B-22
use of, 5-26
OCI_ATTR_CHARSET_FORM
attribute, 6-11, 6-14, 6-16
bind handle attribute, B-20
define handle attribute, B-23
OCI_ATTR_CHARSET_ID
attribute, 6-11, 6-14, 6-16, 6-18
bind handle attribute, B-19
define handle attribute, B-22
OCI_ATTR_CLUSTERED
attribute, 6-7
OCI_ATTR_COLLECTION_ELEMENT
attribute, 6-10
OCI_ATTR_COLLECTION_TYPECODE
attribute, 6-9
OCI_ATTR_COMPLEXOBJECT_COLL_OUTOFLINE
COR handle attribute, B-26
OCI_ATTR_COMPLEXOBJECT_LEVEL
COR handle attribute, B-26
OCI_ATTR_COMPLEXOBJECTCOMP_TYPE
COR descriptor attribute, B-27
OCI_ATTR_COMPLEXOBJECTCOMP_TYPE_LEVEL
COR descriptor attribute, B-27
OCI_ATTR_DATA_SIZE
attribute, 6-10, 6-13, 6-15, 6-17
OCI_ATTR_DATA_TYPE
attribute, 6-10, 6-13, 6-15, 6-17
OCI_ATTR_DBA
attribute, 6-7
OCI_ATTR_ENCAPSULATION
attribute, 6-12
OCI_ATTR_ENV
server handle attribute, B-11
service context handle attribute, B-7
OCI_ATTR_EXTERNAL_NAME
server handle attribute, B-11
OCI_ATTR_FNCODE
bind handle attribute, B-19
define handle attribute, B-22
environment handle attribute, B-4
server handle attribute, B-11
statement handle attribute, B-15
OCI_ATTR_FOCBK
server handle attribute, B-12
OCI_ATTR_HAS_DEFAULT
attribute, 6-17
OCI_ATTR_HAS_FILE
attribute, 6-9
OCI_ATTR_HAS_LOB
attribute, 6-9
OCI_ATTR_HAS_NESTED_TABLE
attribute, 6-9
OCI_ATTR_HW_MARK
attribute, 6-15
OCI_ATTR_IN_V8_MODE
server handle attribute, B-12
service context handle attribute, B-9
OCI_ATTR_INCR
attribute, 6-15
OCI_ATTR_INDEX_ONLY
attribute, 6-7
OCI_ATTR_INTERNAL_NAME
server handle attribute, B-12
OCI_ATTR_IOMODE
attribute, 6-18
OCI_ATTR_IS_CONSTRUCTOR
attribute, 6-12
OCI_ATTR_IS_DESTRUCTOR
attribute, 6-12
OCI_ATTR_IS_INCOMPLETE_TYPE
attribute, 6-9
OCI_ATTR_IS_MAP
attribute, 6-12
OCI_ATTR_IS_NULL
attribute, 6-16, 6-18
OCI_ATTR_IS_OPERATOR
attribute, 6-12
OCI_ATTR_IS_ORDER
attribute, 6-12
OCI_ATTR_IS_PREDEFINED_TYPE
attribute, 6-9
OCI_ATTR_IS_RNDS
attribute, 6-12
OCI_ATTR_IS_RNPS
attribute, 6-12
OCI_ATTR_IS_SELFISH
attribute, 6-12
OCI_ATTR_IS_SYSTEM_GENERATED_TYPE
attribute, 6-9
OCI_ATTR_IS_SYSTEM_TYPE
attribute, 6-9
OCI_ATTR_IS_TRANSIENT_TYPE
attribute, 6-9
OCI_ATTR_IS_WNDS
attribute, 6-12
OCI_ATTR_IS_WNPS
attribute, 6-12
OCI_ATTR_LEVEL
attribute, 6-17
OCI_ATTR_LINK
attribute, 6-14, 6-18
OCI_ATTR_LIST_ARGUMENTS
attribute, 6-7, 6-12
OCI_ATTR_LIST_COLUMNS
attribute, 6-7
OCI_ATTR_LIST_SUBPROGRAMS
attribute, 6-8
OCI_ATTR_LIST_TYPE
attribute, 6-19
OCI_ATTR_LIST_TYPE_ATTRS
attribute, 6-10
OCI_ATTR_LIST_TYPE_METHODS
attribute, 6-10
OCI_ATTR_LOBEMPTY
LOB locator attribute, B-25
OCI_ATTR_MAP_METHOD
attribute, 6-10
OCI_ATTR_MAX
attribute, 6-15
OCI_ATTR_MAXDATA_SIZE
bind handle attribute, B-20
use with binding, 5-26
OCI_ATTR_MIN
attribute, 6-15
OCI_ATTR_NAME
attribute, 6-8, 6-10, 6-12, 6-13, 6-14, 6-15, 6-17
OCI_ATTR_NUM_ATTRS
attribute, 6-6
OCI_ATTR_NUM_COLS
attribute, 6-7
OCI_ATTR_NUM_ELEMENTS
attribute, 6-13
OCI_ATTR_NUM_HANDLES
attribute, 6-19
OCI_ATTR_NUM_PARAMS
attribute, 6-6
OCI_ATTR_NUM_TYPE_ATTRS
attribute, 6-10
OCI_ATTR_NUM_TYPE_METHODS
attribute, 6-10
OCI_ATTR_OBJECT
environment handle attribute, B-3
OCI_ATTR_OBJID
attribute, 6-7, 6-14, 6-15
OCI_ATTR_ORDER
attribute, 6-15
OCI_ATTR_ORDER_METHOD
attribute, 6-10
OCI_ATTR_OVERLOAD
attribute, 6-8
OCI_ATTR_PARAM_COUNT
describe handle attribute, B-24
statement handle attribute, B-17
OCI_ATTR_PARTITIONED
attribute, 6-7
OCI_ATTR_PASSWORD
user session handle attribute, B-13
OCI_ATTR_PDFMT
bind handle attribute, B-21
define handle attribute, B-23
OCI_ATTR_PDSCL
bind handle attribute, B-20
define handle attribute, B-23
OCI_ATTR_PIN_DURATION
environment handle attribute, B-6
OCI_ATTR_PINOPTION
environment handle attribute, B-4
OCI_ATTR_POSITION
attribute, 6-17
OCI_ATTR_PRECISION
attribute, 6-11, 6-13, 6-16, 6-17
OCI_ATTR_PREFETCH_MEMORY
statement handle attribute, B-18
OCI_ATTR_PREFETCH_ROWS
statement handle attribute, B-18
OCI_ATTR_PTYPE
attribute, 6-6
OCI_ATTR_RADIX
attribute, 6-18
OCI_ATTR_REF_TDO
attribute, 6-9, 6-11, 6-14, 6-16, 6-18
OCI_ATTR_ROWID
statement handle attribute, B-17
OCI_ATTR_ROWS_RETURNED
bind handle attribute, B-21
use with callbacks, 5-25
OCI_ATTR_SCALE
attribute, 6-11, 6-13, 6-16, 6-17
OCI_ATTR_SCHEMA
attribute, 6-14
OCI_ATTR_SCHEMA_NAME
attribute, 6-11, 6-14, 6-16, 6-18
OCI_ATTR_SEQ
attributes, 6-15
OCI_ATTR_SERVER
service context handle attribute, B-7
OCI_ATTR_SESSION
service context handle attribute, B-9
OCI_ATTR_SQLCODE
service context handle attribute, B-7
OCI_ATTR_STMT_TYPE
statement handle attribute, B-16
OCI_ATTR_SUB_NAME
attribute, 6-18
OCI_ATTR_TABLESPACE
attribute, 6-7
OCI_ATTR_TIMESTAMP
attribute, 6-6
OCI_ATTR_TRANS
service context handle attribute, B-9
OCI_ATTR_TRANS_NAME
transaction handle attribute, B-14
OCI_ATTR_TYPE_NAME
attribute, 6-11, 6-14, 6-16, 6-18
OCI_ATTR_TYPECODE
attribute, 6-9, 6-10, 6-13, 6-17
OCI_ATTR_USRNAME
user session handle attribute, B-13
OCI_ATTR_VERSION
attribute, 6-9
OCI_ATTR_XID
transaction handle attribute, B-14
OCI_PTYPE_ARG
attributes, 6-17
OCI_PTYPE_COL
attributes, 6-15
OCI_PTYPE_COLL
attributes, 6-13
OCI_PTYPE_FUNC
attributes, 6-7
OCI_PTYPE_LIST
attributes, 6-19
OCI_PTYPE_PKG
attributes, 6-8
OCI_PTYPE_PROC
attributes, 6-7
OCI_PTYPE_SYN
attributes, 6-14
OCI_PTYPE_TABLE
attributes, 6-7
OCI_PTYPE_TYPE
attributes, 6-9
OCI_PTYPE_TYPE_ATTR
attributes, 6-10
OCI_PTYPE_TYPE_FUNC
attributes, 6-12
OCI_PTYPE_TYPE_PROC
attributes, 6-12
OCI_PTYPE_VIEW
attributes, 6-7
OCI_TYPECODE
values, 3-24, 3-25
OCI_TYPECODE values, 3-24
OCIAQDeq(), 13-8
OCIAQEnq(), 13-11
OCIArray, 9-17
binding and defining, 9-17, 10-6
OCIArray manipulation
code example, 9-19
OCIAttrGet(), 13-23
used for describing, 4-9
OCIAttrSet(), 13-25
OCIBindArrayOfStruct(), 13-28
OCIBindByName(), 13-30
OCIBindByPos(), 13-34
OCIBindDynamic(), 13-38
OCIBindObject(), 13-42
OCICacheFlush(), 14-11
OCICacheFree(), 14-13
OCICacheRefresh(), 14-14
OCICacheUnmark(), 14-16
OCICacheUnpin(), 14-17
OCIColl, 9-17
binding and defining, 9-17
OCICollAppend(), 15-9
OCICollAssign(), 15-11
OCICollAssignElem(), 15-13
OCICollGetElem(), 15-15
OCICollMax(), 15-18
OCICollSize(), 15-19
OCICollTrim(), 15-21
OCIComplexObject
use of, 8-23
OCIComplexObjectComp
use of, 8-23
OCIDate, 9-7
binding and defining, 9-7, 10-6
OCIDate manipulation
code example, 9-9
OCIDateAddDays(), 15-22
OCIDateAddMonths(), 15-23
OCIDateAssign(), 15-24
OCIDateCheck(), 15-25
OCIDateCompare(), 15-27
OCIDateDaysBetween(), 15-28
OCIDateFromText(), 15-29
OCIDateGetDat(), 15-31
OCIDateGetTime(), 15-32
OCIDateLastDay(), 15-33
OCIDateNextDay(), 15-34
OCIDateSetDate(), 15-36
OCIDateSetTime(), 15-37
OCIDateSysDate(), 15-38
OCIDateToText(), 15-39
OCIDateZoneToZone(), 15-41
OCIDefineArrayOfStruct(), 13-46
OCIDefineByPos(), 13-48
OCIDefineDynamic(), 13-52
OCIDefineObject(), 13-55
OCIDescAlloc(), 13-60
OCIDescFree(), 13-62
OCIDescribeAny(), 13-57
usage examples, 6-20
using, 6-2
OCIDuration
use of, 11-7, 11-13
OCIEnvInit(), 13-63
OCIErrorGet(), 13-65
OCIExtProcAllocCallmemory(), 16-4
OCIExtProcGetEnv(), 16-8
OCIExtProcRaiseExcp(), 16-5
OCIExtProcRaiseExcpWithMsg(), 16-6
OCIHandleAlloc(), 13-68
OCIHandleFree(), 13-70
OCIInd
use of, 8-29
OCIInitialize(), 13-72
OCIIter, 9-17
binding and defining, 9-17
usage example, 9-19
OCIIterCreate(), 15-43
OCIIterDelete(), 15-45
OCIIterGetCurrent(), 15-46
OCIIterInit(), 15-47
OCIIterNext(), 15-48
OCIIterPrev(), 15-50
OCILdaToSvcCtx(), 13-75
OCILobAppend(), 13-76
OCILobAssign(), 13-78
OCILobCharSet(), 13-80, 13-81
OCILobCopy(), 13-82
OCILobDisableBuffering(), 13-84
OCILobEnableBuffering(), 13-85
OCILobErase(), 13-86
OCILobFileClose(), 13-88
OCILobFileCloseAll(), 13-89
OCILobFileExists(), 13-90
OCILobFileIsOpen(), 13-93
OCILobFileOpen(), 13-95
OCILobFlushBuffer(), 13-98
OCILobGetFile(), 13-91
OCILobGetLength(), 13-100
OCILobIsEqual(), 13-102
OCILobLoadFromFile(), 13-103
OCILobLocatorIsInit(), 13-105
OCILobRead(), 13-107
OCILobSetFile(), 13-96
OCILobTrim(), 13-111
OCILobWrite(), 13-112
OCILockOpt
possible values, 14-32
OCILogoff(), 13-116
OCILogon(), 13-117
using, 2-18
OCINumber, 9-10
bind example, 10-8
binding and defining, 9-10, 10-6
define example, 10-8
OCINumber manipulation
code example, 8-13, 9-13
OCINumberAbs(), 15-52
OCINumberAdd(), 15-53
OCINumberArcCos(), 15-54
OCINumberArcSin(), 15-55
OCINumberArcTan(), 15-56
OCINumberArcTan2(), 15-57
OCINumberAssign(), 15-58
OCINumberCeil(), 15-59
OCINumberCompare(), 15-60
OCINumberCos(), 15-61
OCINumberDiv(), 15-62
OCINumberExp(), 15-63
OCINumberFloor(), 15-64
OCINumberFromInt(), 15-65
OCINumberFromReal(), 15-67
OCINumberFromText(), 15-68
OCINumberHypCos(), 15-70
OCINumberHypSin(), 15-71
OCINumberHypTan(), 15-72
OCINumberIntPower(), 15-73
OCINumberIsZero(), 15-74
OCINumberLn(), 15-75
OCINumberLog(), 15-76
OCINumberMod(), 15-77
OCINumberMul(), 15-78
OCINumberNeg(), 15-79
OCINumberPower(), 15-80
OCINumberRound(), 15-81
OCINumberSetZero(), 15-82
OCINumberSign(), 15-83
OCINumberSin(), 15-84
OCINumberSqrt(), 15-85
OCINumberSub(), 15-86
OCINumberTan(), 15-87
OCINumberToInt(), 15-88
OCINumberToReal(), 15-90
OCINumberToText(), 15-91
OCINumberTrunc(), 15-93
OCIObjectArrayPin(), 14-18
OCIObjectCopy(), 14-20
OCIObjectExists(), 14-22
OCIObjectFlush(), 14-23
OCIObjectFree(), 14-24
OCIObjectGetAttr(), 14-26
OCIObjectGetInd(), 14-28
OCIObjectGetObjectRef(), 14-29
OCIObjectGetTypeRef(), 14-34
OCIObjectIsDirty(), 14-35
OCIObjectIsLocked(), 14-36
OCIObjectLifetime
possible values, 14-31
OCIObjectLock(), 14-37
OCIObjectMarkDelete(), 14-38
OCIObjectMarkDeleteByRef(), 14-40
OCIObjectMarkStatus
possible values, 14-32
OCIObjectMarkUpdate(), 14-41
OCIObjectNew(), 14-43
OCIObjectPin(), 14-46
OCIObjectPinCountReset(), 14-49
OCIObjectPinTable(), 14-51
OCIObjectRefresh(), 14-53
OCIObjectSetAttr(), 14-55
OCIObjectUnmark(), 14-57
OCIObjectUnmarkByRef(), 14-58
OCIObjectUnpin(), 14-59
OCIParamGet(), 13-119
used for describing, 4-9
OCIParamSet(), 13-121
OCIPasswordChange(), 13-123
OCIPinOpt
use of, 11-7
OCIRaw, 9-16
binding and defining, 9-16, 10-6
OCIRaw manipulation
code example, 9-17
OCIRawAllocSize(), 15-94
OCIRawAssignBytes(), 15-95
OCIRawAssignRaw(), 15-96
OCIRawPtr(), 15-97
OCIRawResize(), 15-98
OCIRawSize(), 15-99
OCIRef, 9-22
binding and defining, 9-22
usage example, 9-22
OCIRefAssign(), 15-100
OCIRefClear(), 15-101
OCIRefFromHex(), 15-102
OCIRefHexSize(), 15-104
OCIRefIsEqual(), 15-105
OCIRefIsNull(), 15-106
OCIRefToHex(), 15-107
OCISBreak()
use of, 2-31
OCIServerAttach(), 13-125
OCIServerDetach(), 13-127
OCIServerVersion(), 13-128
OCISessionBegin(), 13-129
OCISessionEnd(), 13-132
OCIStmtExecute(), 13-134
prefetch during, 4-6
use of iters parameter, 4-6
OCIStmtFetch(), 13-137
OCIStmtGetBind(), 13-139
OCIStmtGetPieceInfo(), 13-141
OCIStmtPrepare(), 13-143
preparing SQL statements, 4-4
OCIStmtSetPieceInfo(), 13-145
OCIString, 9-15
binding and defining, 9-15, 10-6
OCIString manipulation
code example, 9-15
OCIStringAllocSize(), 15-109
OCIStringAssign(), 15-110
OCIStringAssignText(), 15-111
OCIStringPtr(), 15-112
OCIStringResize(), 15-113
OCIStringSize(), 15-114
OCISvcCtxBreak(), 13-45
OCISvcCtxToLda(), 13-147
OCITable, 9-17
binding and defining, 9-17, 10-6
OCITableDelete(), 15-115
OCITableExists(), 15-116
OCITableFirst(), 15-117
OCITableLast(), 15-118
OCITableNext(), 15-119
OCITablePrev(), 15-121
OCITableSize(), 15-123
OCITransCommit(), 13-149
OCITransDetach(), 13-152
OCITransForget(), 13-154
OCITransPrepare(), 13-155
OCITransRollback(), 13-156
OCITransStart(), 13-157
OCIType
description
OCITypeArrayByName(), 14-61
OCITypeArrayByRef(), 14-64
OCITypeByName(), 14-66
OCITypeByRef(), 14-69
OCITypeElem
description
OCITypeMethod
description
OID. See object identifier
opaque interfaces, F-2
Oracle Call Interface. See OCI
Oracle datatypes, 3-2
mapping to C, 9-3
Oracle Security Services, 7-43
Oracle8 datatypes
binding and defining, 10-6
oratypes.h
contents, 3-27
ORE. See object runtime environment
OTT
command line, 12-6
command line syntax, 12-23
creating types in the database, 12-4
datatype mappings, 12-9
invoking, 12-5
outtype file, 12-16
overview, 12-2
parameters, 12-24
providing an intype file, 12-8
reference, 12-22
restrictions, 12-37
using, 12-1
OTT parameters
CASE, 12-27
CODE, 12-26
CONFIG, 12-27
ERRTYPE, 12-27
HFILE, 12-26
INITFILE, 12-26
INITFUNC, 12-26
INTYPE, 12-25
OUTTYPE, 12-25
SCHEMA_NAMES, 12-28
USERID, 12-24
where they appear, 12-28
outtype file, 12-29
when running OTT, 12-16
OUTTYPE OTT parameter, 12-25

P

packages
attributes, 6-8
describing, 6-2
parameter descriptor, 2-14
attributes, B-24
parameter descriptor object
parameter descriptors
attributes, 6-5
parameters
attributes, 6-5
modes, 13-7, 16-3
passing strings, 2-28
string length, 13-6
password management, 7-11, 7-12
PDO. See parameter descriptor object
persistent objects, 8-6
meta-attributes, 8-17
piecewise fetch, 7-20
piecewise operations, 7-18
fetch, 7-16, 7-21
in PL/SQL, 7-20
insert, 7-16
update, 7-16
valid datatypes, 7-17
pin count, 8-28
pin duration
example, 11-13
of objects, 11-13
pinning, 11-6
pinning objects, 11-6
PL/SQL, 1-6
binding and defining nested tables, 5-27
binding and defining ref cursors, 5-27
binding placeholders, 2-32
defining output variables, 5-17
piecewise operations, 7-20
uses in OCI applications, 2-32
using in OCI applications, 2-32
using in OCI programs, 5-7
positioned deletes, 2-31
positioned updates, 2-31
preface
Send Us Your Comments, xxvii
prefetching
during OCIStmtExecute(), 4-6
setting prefetch memory size, 4-12
setting row count, 4-12
procedures
attributes, 6-7

Q

query
explicit describe, 4-10
query. See SQL query
Quick reference to OCI relational functions, 13-3

R

RAW
external datatype, 3-15
REF
binding, 5-10, 10-3
defining, 5-16, 10-4
external data types, 3-19
indicator variable for, 2-28
retrieving from server, 8-11
ref cursor variables
binding, 5-12
ref cursors
binding and defining, 5-27
reference. See REF
refreshing, 11-10
refreshing objects, 11-10
REFs
indicator variables for, 2-30
relational functions
server roundtrips, E-7
release 8.0 enhancements, F-2
reserved namespaces, C-11
reserved words, C-2
resuming branches, 7-7
return values
navigational functions, 14-4
RETURNING clause
binding with, 5-22
code example, D-25
error handling, 5-23
using with OCI
with REFs, 5-23
rollback, 2-23
in object applications, 11-13
roundtrips
See server roundtrips
ROWID
external data type, 3-14
used for positioned updates and deletes, 2-31
ROWID descriptor, 2-15

S

sb1
definition, 3-27
sb2
definition, 3-27
sb4
definition, 3-27
SCHEMA_NAMES OTT parameter, 12-28
usage, 12-33
secondary memory
of object, 11-15
security handle, 2-10
select-list
describing, 4-8
Send Us Your Comments
boilerplate, xxvii
sequences
attributes, 6-15
describing, 6-2
server handle
attributes, B-11
description, 2-9
setting in service context, 2-9
server roundtrips
cache functions, E-4
datatype mapping and manipulation functions, E-6
describe operation, E-5
LOB functions
object functions, E-4
relational functions, E-7
service context handle
attributes, B-7
description, 2-8
elements of, 2-8
single-task linking
support, A-9
skip parameter
for standard arrays, 5-19
skip parameters
for arrays of structures, 5-18
snapshot descriptor, 2-13
snapshots
executing against, 4-7
SQL processing
code example, D-2
SQL query
binding placeholders. See bind operation
defining output variables, 4-11, 5-13, 10-4
defining output variables. See define operation
fetching results, 4-12
statement type, 1-5
SQL statements, 1-4
binding placeholders in, 4-5, 5-2, 10-2
determining type prepared, 4-4
executing, 4-6
preparing for execution, 4-4
processing, 4-2
types
control statements, 1-5
data definition language, 1-4
data manipulation language, 1-5
embedded SQL, 1-7
PL/SQL, 1-6
queries, 1-5
SQLT typecodes, 3-25
SQLT_NTY
bind example, 10-13
define example, 10-14
description, 3-18
SQLT_REF
definition, 3-19
description, 3-19
statement handle
attributes, B-15
description, 2-10
static arrays
binding, 5-10
defining, 5-17
stored functions
describing, 6-2
stored procedures
describing, 6-2
STRING
external datatype, 3-12
strings
passing as parameters, 2-28
structures
arrays of, 5-17
sword
definition, 3-27
synonyms
attributes, 6-14
describing, 6-2

T

tables
attributes, 6-7
describing, 6-2
TDO
definition, 10-2
description, 9-23
obtaining, 9-23
type descriptor object. See TDO.
TDO. See type descriptor object
terminology
navigational functions, 14-4
used in this manual, 1-8
thread safety, 7-13
advantages of, 7-13
and three-tier architectures, 7-13
basic concepts, 7-14
implementing with OCI, 7-14
mixing 7.x and 8.0 calls, 7-15
required OCI calls, 7-14
three-tier architectures
and thread safety, 7-13
top-level memory
of object, 11-15
transaction handle
attributes, B-14
description, 2-9
transaction identifier, 7-5
transactional complexity
levels in OCI, 7-3
transactions
committing, 2-23
global, 7-4
branch states, 7-7
branches, 7-5
one-phase commit, 7-8
transaction identifier, 7-5
two-phase commit, 7-8
global examples, 7-9
initialization parameters, 7-10
local, 7-4
OCI functions for
transactions, 7-3
read-only, 7-4
rolling back, 2-23
serializable, 7-4
transient objects, 8-7
LOB attributes, 7-27
meta-attributes, 8-20
type attributes
attributes, 6-10
type descriptor object, 9-23
type functions
attributes, 6-12
type procedures
attributes, 6-12
type reference, 8-32
typecodes, 3-24
types
attributes, 6-9
describing, 6-2

U

ub1
definition, 3-27
ub2
definition, 3-27
ub4
definition, 3-27
unmarking, 11-10
unmarking objects, 11-10
unpinning, 8-28, 11-8
unpinning objects, 11-8
UNSIGNED
external datatype, 3-16
update
piecewise, 7-16, 7-18
updates
positioned, 2-31
upgrading
7.x to 8.0, A-4
7.x to 8.0 OCI, A-6
user authentication, 7-11
user memory
allocating, 2-15
user session handle
attributes, B-13
description, 2-9
setting in service context, 2-9
USERID OTT parameter, 12-24

V

values, 8-5
in object applications, 8-7
VARCHAR
external datatype, 3-13
VARCHAR2
external datatype, 3-9
VARNUM
external datatype, 3-13
VARRAW
external datatype, 3-15
views
attributes, 6-7
describing, 6-2

W

with_context
argument to external procedure functions, 16-2

X

XID. See transaction identifier
xtramem_sz parameter
using, 2-15


Prev
Oracle
Copyright © 1997 Oracle Corporation.

All Rights Reserved.

Library

Product

Contents