INFORMIX
Informix-ESQL/C Programmer's Manual
Index
Home Contents Index Master Index New Book

Index

A

.a file extension 1-77
Access mode flags, locks on smart large objects 7-27
Aggregate function 1-42, 1-43, 11-15, 11-31
ALLOCATE COLLECTION statement 9-12
ALLOCATE DESCRIPTOR statement 16-4, 16-5
ALLOCATE ROW statement 9-57
Allocating memory
for fetch arrays 15-38
Allocation extent size 7-9, 7-66, 7-75
ALTER INDEX statement 12-34, 12-52, 15-18
ALTER TABLE statement 12-34, 12-52, 15-17
Ampersand (&) symbol 5-30
ANSI C standards 13-25
ANSI compliance, level Intro-15
-ansi preprocessor option 1-52, 1-57, 12-18
See also ANSI SQL standards.
ANSI SQL standards
checking for Informix extensions 11-15, 11-23, 11-31, 12-18
connecting to a database 12-18
declaring host variables 1-27
defining ESQL/C function prototypes 1-23
delimiting identifiers 1-32
delimiting strings 1-32
escape character 1-19
for datetime and interval values 6-36, 6-59, 6-71
getting diagnostic information 11-6
preparing SQL statements 14-5
specifying host variables 1-21
SQLSTATE class values 11-14
using EXEC SQL keywords 1-13
using GOTO in WHENEVER 11-46
using INDICATOR keyword 1-45, 1-46
warning values 11-22
See also ansi preprocessor option; ANSI-compliant database.
ANSI-compliant database
determining 11-15, 11-22, 11-30, 12-27
indicating NOT FOUND condition 11-20, 11-35
inserting character data 3-18
nonstandard syntax in sqlwarn 11-31
ANSI-style parameters as host variables 1-40
Arithmetic operations
datetime data 6-36
decimal data 4-7
description of 2-19
int8 data 5-8
interval data 6-36
Array
and truncated SQL value 1-44
dimension limit 1-36
in a host-variable typedef 1-38
of host variables 1-36
ASKPASSATCONNECT network parameter 1-108, 12-14, 12-15
Asterisk (*) symbol
as formatting character 5-30
as overflow character 2-17, 6-35
AUTOFREE feature 14-24
enabling 14-25
for a particular cursor 14-25
with Deferred PREPARE and OPTOFC features 14-39

B

Backslash (\) character 1-19
-bc processor option 1-79
Binary large object (blob). See Simple large-object data type.
BLOB data type
corresponding ESQL/C data type 2-5, 2-11
declaring host variable for 7-7
implementation of 10-48
on optical disc 7-32
role of locator.h 2-11
See also ifx_lo_t data type; Smart-large-object data type.
BOOLEAN data type
corresponding ESQL/C data type 2-5, 2-13
data conversion 2-14, 2-18
defined constant 2-9
distinct-bit constant 15-32
distinct-bit macro 15-32
See also boolean data type.
boolean data type
corresponding SQL data type 2-13
declaration 2-13
defined constant 2-11
See also BOOLEAN data type.
Borland compiler, invoking 1-79
Buffer. See Cursor buffer.
Build file 1-83
Built-in data type
as element type of collection 9-6
as field type in row 9-50
bycmpr() library function 3-21
bycopy() library function 3-24
byfill() library function 3-26
byleng() library function 3-28
BYTE data type
corresponding ESQL/C data type 2-4, 2-11
declaring host variable for 8-5
defined constant 2-8
inserting 8-17, 8-23, 8-28, 8-34
locator structure shown 8-7
on optical disc 8-40
role of locator.h 1-23, 2-11
selecting 8-15, 8-22, 8-27, 8-33
subscripting 8-6
See also loc_t data type; Simple large-object data type.
Bytes
comparing 3-21
copying 3-24
determining number of 3-28
filling with a character 3-26

C

C compiler
ANSI C 1-25, 1-26
-bc option 1-79
Borland 1-79
-c option 1-79, 1-84
called by esql 1-11
generating thread-safe code 13-27
#include preprocessor statement 1-26
initializer expressions 1-29
linking in other files 1-87
-mc option 1-80
Microsoft 1-80
naming restrictions 1-28
options invoked implicitly 1-83
passing arguments to 1-76, 1-79, 1-81, 1-91
passing options to 1-77
passing source files to 1-79
role in compiling ESQL/C programs 1-10
specifying 1-78, 1-81
#define preprocessor statement 1-15
#include preprocessor statement 1-14, 1-63
.c file extension 1-9, 1-59, 1-77, 1-79, 1-81, 1-87, 11-33, 13-14
C header files
for conditional compilation of ESQL/C programs 1-67
for defining host variables 1-67
including in EXEC SQL declare section 1-71
shared between ESQL/C and C programs 1-70
C preprocessor
role in compiling ESQL/C programs 1-10
running first 1-10, 1-67
C preprocessor directives, using to define ESQL/C host variables 1-10
-c processor option 1-79, 1-81, 1-84
C programs, compiling 1-87
Callback function
declaring 12-38, 12-40
defining 12-39, 12-70
definition of 12-37
determining current connection 12-32
disassociating 12-39, 12-56
registering 12-40, 12-54
calloc() system call 17-10
Cardinality, ifx_cl_card() 9-45
Case sensitivity 1-18, 1-33
CBOOLTYPE data-type constant 2-11, 2-14
See also boolean data type.
-cc processor option 1-79, 1-81
CC8BITLEVEL environment variable 1-108
-ccargs preprocessor option 1-50
CCHARTYPE data-type constant 2-10, 2-33
See also char data type.
CCOLTYPE data-type constant 2-10
See also collection data type (ESQL/C).
CDATETYPE data-type constant 2-10
See also long int data type.
CDECIMALTYPE data-type constant 2-10
See also decimal data type.
CDOUBLETYPE data-type constant 2-10
See also double data type.
CDTIMETYPE data-type constant 2-10
See also datetime data type.
CFILETYPE data-type constant 2-10
See also char data type.
CFIXBINTYPE data-type constant 2-11
See also fixed binary data type.
CFIXCHARTYPE data-type constant 2-10
See also fixchar data type.
CFLOATTYPE data-type constant 2-10
See also float data type.
CHAR data type
corresponding ESQL/C data type 2-4, 2-11, 3-3
data conversion 3-11
defined constant 2-8, 2-9, 15-21
fetching 3-11
inserting 3-12, 3-18
See also char data type; fixchar data type; string data type; varchar data type.
char data type
converting from decimal 4-28, 4-42, 5-37
converting from double 5-41
converting from int8 5-24
converting from long int 5-44
converting to decimal 4-16
converting to int8 5-15
defined constant 2-10
definition of 3-4
fetching into 2-18, 3-11, 3-13, 3-17, 5-6, 6-35
inserting from 3-12, 3-14, 3-17, 3-18
with ANSI-compliant database 3-18
See also CHAR data type.
CHARACTER data type. See CHAR data type.
Child process
detaching from database server 12-57
handling defunct 12-67
CINT8TYPE data-type constant 2-10
See also int8 data type.
CINTTYPE data-type constant 2-10
See also int data type.
CINVTYPE data-type constant 2-10
See also interval data type.
Class value. See SQLSTATE variable, class and subclass codes.
Client-server environment
and the cursor buffer 14-23
architecture of 12-3
connecting to a database 12-18
local connection 12-4
locating simple large objects 8-10
optimized message transfers 12-42
remote connection 12-4
setting the cursor-buffer size 14-24
Client-side collection variable 9-11
CLIENT_GEN_VER version macro 13-14
CLIENT_GLS_VER version macro 13-14
CLIENT_LOCALE environment variable, in InetLogin structure 1-106
CLIENT_OS_VER version macro 13-14
CLIENT_SQLI_VER version macro 13-14
CLOB data type
corresponding ESQL/C data type 2-5, 2-13
declaring host variable for 7-7
implementation of 10-48
on optical disc 7-32
role of locator.h 2-13
See also ifx_lo_t data type; Smart large-object data type.
CLOCATORTYPE data-type constant 2-10
See also loc_t data type.
CLONGTYPE data-type constant 2-10
See also long int data type.
CLOSE DATABASE statement 12-18, 12-19, 12-41, 12-65, 12-99, 15-18
CLOSE statement 9-24, 14-13, 14-15, 14-19
optimizing 14-35
CLVCHARTYPE data-type constant 2-11
See also lvarchar data type.
CMONEYTYPE data-type constant 2-10
See also decimal data type.
COLLCHAR environment variable
in InetLogin structure 1-106
collct.h header file, definition of 1-24
Collection data type
cardinality, returning 9-45
selecting entire row from 9-26
collection data type (ESQL/C)
allocating memory for 9-11
client-side 9-11
Collection Derived Table clause 9-14
corresponding SQL data type 2-4, 2-5, 2-12, 2-13
deallocating memory for 9-11
declaration 9-5
defined constant 2-10
fetching from 9-24
fetching into 9-16
initializing 9-16
insert cursor for 9-21
inserting into 9-18
literal values 9-32
operating on 9-13
preparing statements that contain 14-8
select cursor for 9-27
typed collection variable 9-6
untyped collection variable 9-9
updating 9-29
See also Collection data type (SQL).
Collection data type (SQL)
accessing 9-4
as element type of collection 9-6
as field type in row 9-50
declaring host variables for 9-5
definition of 9-4
deleting 9-44
extended identifier 15-9, 15-13
fetching 9-16, 9-24
in dynamic SQL 15-13
inserting into 9-18, 9-40, 9-41
literal values 9-32, 9-42, 9-43, 9-75
nested collection 9-26, 9-37, 9-43, 9-75
owner of 15-9, 15-14
selecting from 9-41
simple collection 9-13
updating 9-29, 9-40, 9-41
See also collection data type (ESQL/C); LIST data type; MULTISET data type; SET data type.
Collection data type (SQL), selecting a row from 9-26
Collection derived table
for collection variables 9-13
for row variables 9-59
in DELETE 9-34, 9-68
in INSERT 9-18, 9-20, 9-64
in SELECT 9-24, 9-26, 9-64
in UPDATE 9-29, 9-66
Colon (:)
between main variable and indicator variable 1-45
preceding host variables 1-21
specifying indicator variable 1-45
Column (database)
determining data type 2-8
determining if truncated 11-15, 11-31
using data conversion 2-15
Comma (,) symbol 5-30
Command-line conventions
elements of Intro-10
example diagram Intro-12
how to read Intro-12
Comment icons Intro-8
Comments in ESQL/C program 1-21
COMMIT WORK statement 12-30, 15-18
Compiler
for ESQL/C programs 1-47
options. See Preprocessor option.
preprocessing 1-47
redirecting errors 1-65
syntax 1-48
version information 1-59
See also Preprocessor.
Compiler version independence 1-90
Compiling an ESQL/C program
default order, overview of 1-11
overview 1-9
the esql command 1-8, 1-9
the ESQL/C preprocessor 1-9
Compiling dynamic thread application 13-51
Compiling ESQL/C programs
default order 1-67
non-default order 1-69
Complex data type. See Collection data type (SQL); Row type (SQL).
Compliance, with industry standards Intro-15
Conditional compilation directives 1-12, 8-48
Conditional compilation directives, ESQL/C
processing of 1-9
Configuration information
in InetLogin structure 1-104
locations of 1-112
reading in 1-112
CONNECT statement 12-12, 12-93
and explicit connections 12-18
determining database server features 12-27
determining name of a connection 11-11
determining name of a database server 11-11, 12-31
establishing a connection 12-20, 13-18
with an active transaction 12-30
WITH CONCURRENT TRANSACTION clause 12-30
Connection
using InetLogin structure 1-104, 12-8
using Registry 12-8
Connection authentication 1-89
Connection handle 12-94
Connection. See Database server connection.
Constants
for distinct bit 15-32
for ESQL/C data types 2-10
for smart large objects 7-10, 7-23, 7-41, 7-44, 7-58
for SQL data types 2-8, 15-20, 16-9
for SQL statements 11-33, 15-17
for varchar data 3-7
for X/Open SQL data types 2-9
with dynamic-management structures 15-17, 15-20
Conversion. See Data conversion.
COUNT descriptor field
after a DESCRIBE 15-15, 16-6
definition of 15-7
determining number of return values 16-27
initializing 16-5
saving 16-10, 16-14, 16-18, 16-29
setting 16-9, 16-36, 16-40
-cp preprocessor option 1-49
CPFIRST environment variable 1-68
-cpu processor option 1-92
CREATE DATABASE statement 12-18, 12-19, 12-20, 12-27, 15-17
CREATE FUNCTION statement 14-46
CREATE INDEX statement 12-34, 12-52, 15-17
CREATE OPAQUE TYPE statement, maxlength value and lvarchar 10-6
CREATE PROCEDURE statement 14-46, 15-18
CREATE TABLE statement 7-14, 9-72, 12-34, 12-52, 15-17
Create-time flags 7-67, 7-77
create_clob sample program 7-100
CROWTYPE data-type constant 2-11
See also row data type (ESQL/C).
CSHORTTYPE data-type constant 2-10
See also short data type.
CSTRINGTYPE data-type constant 2-10, 2-33
See also string data type.
Cursor buffer
changing size of 14-22
default size 14-22
description 14-20
fetch buffer 14-20
insert buffer 14-20
sizing 14-20
Cursor function
definition of 14-48
known at compile time 14-50
not known at compile time 16-28, 17-28
parameterized 14-54
with sqlda structure 17-28
with system-descriptor area 16-28
See also SPL function.
Cursor names
case sensitivity 1-18
scope rules 1-65, 13-24
specifying 14-19
using delimited identifiers 1-33, 14-19
using host variables 14-19
Cursor (database)
and sqlca.sqlerrd 11-30
deferring PREPARE 14-30
definition of 14-14
dynamic 13-17, 14-19
for receiving rows 14-14
for sending rows 14-18
freeing 14-13, 14-24
hold 14-15, 14-18
identifying variable mismatch 11-15, 11-23, 11-31
in thread-safe application 13-24
insert 14-18
interrupting the database server 12-52
naming 14-19
optimizing 14-20
scroll 14-15
sequential 14-15, 14-18
sizing the cursor buffer 14-20
update 14-15
using 14-14
See also Fetching; SELECT statement.
CVARBINTYPE data-type constant 2-11
See also var binary data type.
CVCHARTYPE data-type constant 2-10
See also varchar data type.

D

Data conversion
arithmetic operations 2-19
definition of 2-15
for boolean values 2-14, 2-18
for CHAR data type 3-11
for char values 4-16, 4-28, 4-42, 5-15, 5-24
for character data types 2-16, 2-18, 2-19, 3-11, 5-6
for DATE values 6-37
for DATETIME values 2-18, 6-33, 6-37, 6-51
for DECIMAL values 2-20, 4-7, 5-18, 5-37
for decimal values 4-16, 4-19, 4-21, 4-23, 4-28, 4-42, 4-45, 4-47, 4-50, 5-27
for double values 4-19, 4-45, 5-26, 5-41
for floating-point data types 2-18, 5-6
for int values 4-21, 4-47, 5-28
for INT8 values 5-8
for INTERVAL values 2-18, 6-33, 6-37
for long int values 4-23, 4-50, 5-20, 5-29, 5-44
for MONEY values 5-37, 5-41, 5-44
for numeric data types 2-16, 2-19, 2-20
for NVARCHAR data type 3-12
for VARCHAR values 2-19, 3-12
when fetching DATETIME 6-35
when fetching INTERVAL 6-35
when inserting DATETIME 6-35
when inserting INTERVAL 6-35
DATA descriptor field
after a DESCRIBE 16-6, 16-7
after a FETCH 16-12, 16-14, 16-19, 16-28, 16-42
allocating memory for 16-5
definition of 15-7
freeing memory for 16-12
setting column value 16-30, 16-33
setting input parameter 16-36, 16-41
setting simple large-object column 16-55
See also Item descriptor.
Data type conversion. See Data conversion.
Data types
array of host variables 1-36
defined constants for 15-20, 16-9
for dynamic thread library 13-43
locale-specific 3-3
locator structure 8-6
pointers 1-39
relationship between C and SQL types 2-3, 2-4
structures 1-36, 1-37
typedef expressions 1-38
X/Open defined constants for 2-9, 15-21
See also ESQL/C data types; SQL data types.
Database
closing 12-41
determining available 12-33
determining if ANSI-compliant 11-15, 11-22, 11-30, 12-27
determining transaction logging 11-15, 11-22, 11-30, 12-27
environment 12-5
fetching CHAR data 3-11
fetching DATETIME data 6-33
fetching INTERVAL data 6-34
fetching VARCHAR data 3-13
inserting CHAR data 3-12
inserting NCHAR data 3-12
inserting NVARCHAR data 3-15
inserting VARCHAR data 3-14
opening 12-20
Database cursor
in explicit connection 12-94
structure definitions 1-23
Database server
connecting to 12-21
current 12-11
default 1-105, 12-7, 12-11, 12-26
determining available databases 12-33
determining features of 12-27
determining name of 11-11, 12-31
determining type of 11-15, 11-23
in InetLogin structure 1-105
interrupting 12-52
message request 12-34, 12-39, 12-90, 14-22, 14-24, 14-30, 14-36
optimized message transfers 12-42
optimizing OPEN, FETCH, and CLOSE 14-35
receiving configuration information 12-8
reducing messages 14-30
specified 12-11
See also DATABASE statement; INFORMIX-Universal server.
Database server connection
active 12-31, 12-48, 13-18
checking status of 12-33
current 7-53, 12-17, 12-29, 12-31, 12-47, 12-48
detaching from 12-33
determining features 12-27
determining name of 11-11, 12-31
dormant 12-17, 12-29, 13-18
explicit. See Explicit connection.
freeing resources of 12-65
implicit. See Implicit connection.
in thread-safe application 13-18
interrupting 12-34
switching between 12-29
terminating 12-41, 13-22
types of 12-16
using across threads 13-20
DATABASE statement 12-96
and implicit connections 12-18, 12-19, 12-68
defined statement constant 15-17
determining name of a connection 11-11
determining name of a database server 11-11, 12-31
opening a database 12-27
starting a database server 12-20
DATE data type
corresponding ESQL/C variable type 2-4, 2-11
data conversion 6-37
declaring host variables for 6-3
defined constant 2-8
rdatestr() 6-6
rdayofweek() 6-8
rdefmtdate() 6-10
rfmtdate() 6-14
rjulmdy() 6-17
rleapyear() 6-19
rmdyjul() 6-21
rstrdate() 6-23
rtoday() 6-26
See also date data type.
date data type
corresponding SQL data type 2-4, 2-11
data conversion 6-37
declaration 6-3
defined constant 2-10
See also DATE data type.
Date expressions
formatting 6-4
valid characters 6-4
DATETIME data type
ANSI-standard qualifiers 6-36
corresponding ESQL/C data type 2-4, 2-11
data conversion 2-18, 6-33, 6-35, 6-37, 6-51
declaring host variables for 6-29
defined constant 2-8
dtaddinv() 6-40
dtcurrent() 6-42
dtcvasc() 6-44
dtcvfmtasc() 6-47
dtextend() 6-51
dtsubinv() 6-57
dtsub() 6-54
dttoasc() 6-59
dttofmtasc() 6-62
dynamically allocating structures for 17-12
extending 6-33, 6-51
fetching 2-18, 6-33
inserting 2-18, 6-33
macros 6-31
precision of underlying decimal value 6-29
qualifiers 6-29, 6-36
role of datetime.h 1-22, 2-11
See also datetime data type.
datetime data type
arithmetic operations 6-36
corresponding SQL data type 2-4
data conversion 6-37
declaration 6-29
defined constant 2-10
definition of 6-28
fetching into 6-33
inserting from 6-33
role of datetime.h 2-11
See also DATETIME data type; dtime_t typedef.
datetime.h header file
contents and use 6-28, 6-40
data types defined 2-11, 2-12
definition of 1-22
macros defined 6-31, 17-12
DBALSBC environment variable 1-108
DBANSIWARN environment variable 1-60, 1-106, 11-23, 11-31, 12-18
DBAPICODE environment variable 1-108
DBASCIIBC environment variable 1-109
DBCENTURY environment variable 1-109, 6-11, 6-23, 6-44, 6-48, 6-63
DBCODESET environment variable 1-109
DBCONNECT environment variable 1-109
DBCSCONV environment variable 1-109
DBCSOVERRIDE environment variable 1-109
DBCSWIDTH environment variable 1-109
DBDATE environment variable 1-105, 6-6, 6-23, 6-48, 6-63
DBFLTMASK environment variable 1-109
DBLANG environment variable 1-106
DBMONEY environment variable 1-105, 5-30, 5-31, 5-37, 5-41, 5-44
DBMONEYSCALE environment variable 1-110
DBNLS environment variable 1-106
DBPATH environment variable 1-105, 12-26, 12-50
DBSS2 environment variable 1-110
DBSS3 environment variable 1-110
DBTEMP environment variable 1-105
DBTIME environment variable 1-105, 6-47, 6-62, 6-68, 6-74
DB_LOCALE environment variable 1-106
DCE thread package. See Distributed Computing Environment (DCE).
DEALLOCATE COLLECTION statement 9-12
DEALLOCATE DESCRIPTOR statement 16-5, 16-12
DEALLOCATE ROW statement 9-57
DEC data type. See DECIMAL data type.
decadd() library function 4-7, 4-9
deccmp() library function 4-7, 4-11
deccopy() library function 4-7, 4-14
deccvasc() library function 4-7, 4-16
deccvdbl() library function 4-7, 4-19
deccvint() library function 4-7, 4-21
deccvlong() library function 4-7, 4-23
decdiv() library function 4-7, 4-25
dececvt() library function 4-7, 4-28, 13-25, 13-30, 13-31
decfcvt() library function 4-28, 13-25, 13-30, 13-31
decfvct() library function 4-7
Decimal arithmetic
addition 4-9
division 4-25
multiplication 4-35
subtraction 4-40
DECIMAL data type
corresponding ESQL/C variable type 2-4, 2-12
data conversion 2-19, 2-20, 2-21, 4-7, 5-18, 5-37
decadd() 4-9
deccmp() 4-11
deccopy() 4-14
deccvasc() 4-16
deccvbl() 4-19
deccvint() 4-21
deccvlong() 4-23
decdiv() 4-25
dececvt() 4-28
decfcvt() 4-28
decimal structure shown 4-4
declaring host variables for 4-3
decmul() 4-35
decround() 4-37
decsub() 4-40
dectoasc() 4-42
dectodbl() 4-45
dectoint() 4-47
dectolong() 4-50
dectrunc() 4-52
defined constant 2-8, 2-9, 15-21
fixed-point decimals 2-20, 2-22
number of decimal digits 2-18, 5-6
role of decimal.h 1-22, 2-12
scale and precision 2-22, 15-8
See also decimal data type.
decimal data type
addition 4-9
arithmetic operations 4-7
comparing 4-11
converting from double 4-19
converting from int8 5-27
converting from integer 4-21
converting from long int 4-23
converting from text 4-16
converting to double 4-45
converting to int 4-47
converting to int8 5-18
converting to long int 4-50
converting to text 4-28, 4-42, 5-37
copying 4-14
corresponding SQL data type 2-4
data conversion 2-20, 4-7
declaration 4-3
defined constant for DECIMAL data type 2-10
defined constant for MONEY data type 2-10
division 4-25
floating-point decimals 2-20, 2-22
in thread-safe application 13-25
multiplication 4-35
role of decimal.h 2-12
rounding 4-37
subtraction 4-40
truncating 4-52
See also DECIMAL data type; MONEY data type; dec_t typedef.
decimal structure 4-4
decimal.h header file
data types defined 2-12, 4-4
definition of 1-22
DECLARE SECTION 1-27
excluding C header file statements from 1-72
including C declaration syntax in 1-72
DECLARE statement
and sqlca structure 11-30, 11-39
in thread-safe application 13-24
insert cursor for collection variable 9-21
select cursor for collection variable 9-27
with a SELECT statement 14-15
with an EXECUTE FUNCTION statement 14-15, 16-28, 17-28
with an INSERT statement 14-18
with deferred PREPARE 14-30
with OPTOFC and Deferred PREPARE features 14-38
decmul() library function 4-7, 4-35
decround() library function 4-7, 4-37
decsub() library function 4-7, 4-40
dectoasc() library function 4-7, 4-42
dectodbl() library function 4-7, 4-45
dectoint() library function 4-7, 4-47
dectolong() library function 4-7, 4-50
dectrunc() library function 4-7, 4-52
dec_t typedef
defined constant for DECIMAL data type 2-10
defined constant for MONEY data type 2-10
definition of 4-4
.def file extension 1-80, 1-85, 1-87
Default locale Intro-4
Default order of compilation of ESQL/C programs, overview of 1-11
Deferred PREPARE feature 14-30
enabling 14-32
restrictions on 14-31
SET DEFERRED_PREPARE statement 14-32
with AUTOFREE and OPTOFC features 14-39
with OPTOFC feature 14-38
define directives, ESQL/C
processing of 1-9
define preprocessor directive 1-12, 1-14, 1-61
DELETE statement
and NOT FOUND condition 11-20, 11-35
collection columns 9-44
Collection Derived Table clause 9-34, 9-68
defined statement constant 15-17, 15-18
determining estimated cost of 11-30
determining number of rows deleted 11-8, 11-30
determining rowid 11-30
dynamic 14-40, 14-52, 15-26
failing to access rows 11-29
in ANSI-compliant database 3-18
interrupting 12-34, 12-52
known at compile time 14-40, 14-52
not known at compile time 15-26
parameterized 14-52, 15-27, 16-46, 17-43
row variables 9-68
WHERE CURRENT OF clause 14-19
with DESCRIBE 15-16, 15-23
without WHERE clause 11-15, 11-23, 11-31, 15-18, 15-23
DELIMIDENT environment variable 1-33, 1-107, 9-68
Delimited identifier 1-32, 9-68, 14-19
See also SQL identifier.
demo1 sample program 1-117
demo2 sample program 14-54
demo3 sample program 16-15, 16-37, 17-18
demo4 sample program 14-54, 16-15, 17-34
Demonstration database Intro-5
creating and populating B-3
Demonstration programs
location 1-117
source files for B-1
DESCRIBE statement
allocating memory for data 2-30, 16-6, 16-7, 17-10
allocating memory for sqlda 17-6
and deferred PREPARE 14-34
and lvarchar host variables 16-7
and sqlca structure 15-23
determining column data type 2-8, 3-7, 15-21, 15-22
determining return-value data type 15-21
determining SQL statement type 11-29, 11-33, 15-17
initializing sqlda structure 17-7
initializing system-descriptor area 16-6
INTO clause 15-16, 17-4, 17-6, 17-7, 17-43
role in dynamic SQL 14-10
setting COUNT field 16-6
SQLCODE value 11-33, 15-17
SQLSTATE value. See DESCRIBE statement, SQLCODE value.
USING SQL DESCRIPTOR clause 15-15, 16-4, 16-6, 16-14, 16-29, 16-46
warnings after 11-15, 11-23, 11-31
with an item descriptor 16-14, 16-29
with deferred PREPARE 14-31
with input parameters 16-6
with sqlvar_struct 17-17, 17-27
X/Open data type values 15-21
Diagnostic information
definition of 11-4
with GET DIAGNOSTICS statement 11-7
with the sqlca structure 11-27
Diagnostics area
CLASS_ORIGIN field 11-10, 11-22, 11-24, 11-25
CONNECTION_NAME field 11-11, 12-31
definition of 11-7
INFORMIX_SQLCODE field 11-10, 11-13
MESSAGE_LENGTH field 11-11
MESSAGE_TEXT field 11-10, 11-24
MORE field 11-8
NUMBER field 11-8
RETURNED_SQLSTATE field 11-10, 11-12
ROW_COUNT field 11-8
SERVER_NAME field 11-11, 12-31
SUBCLASS_ORIGIN field 11-10, 11-22, 11-24, 11-25
undefined fields 11-13
See also GET DIAGNOSTICS statement.
Directive. See Preprocessor directive.
DISCONNECT statement 12-93, 12-98
and explicit connections 12-18
and open transactions 12-65
in thread-safe application 13-22
terminating a database server connection 12-41
dispcat_pic sample program 8-44, 11-59
Distinct bit 15-32
Distinct data type
algorithm for determining 15-33
distinct bit 15-32
dynamically executing 15-31
extended identifier 15-9, 15-13
in dynamic SQL 15-13
name of 15-9, 15-14
owner of 15-9, 15-14
source data type 15-9, 15-14, 15-32
Distributed Computing Environment (DCE) 13-16, 13-25, 13-26
.dll file extension 1-80, 1-94, 1-95, 12-21
DLL Registry 1-89
Documentation conventions
command-line Intro-10
icon Intro-8
typographical Intro-7
Documentation notes Intro-14
Documentation, types of
error message files Intro-13
on-line manuals Intro-13
printed manuals Intro-13
Dollar ($) sign
as formatting character 5-31
between main variable and indicator variable 1-45
for function parameters 1-40
relation to SQL keyword protection 1-73
to declare host variables 1-21, 1-27
with embedded SQL statements 1-17
with preprocessor directives 1-12
Dot notation 9-66, 9-74
Double dash (--) 1-21
double data type
converting from decimal 4-45
converting from int8 5-26
converting to decimal 4-19
converting to int8 5-17
converting to text 5-41
corresponding SQL data type 2-4, 2-12, 5-5
data conversion 2-20
defined constant 2-10
See also FLOAT data type.
DOUBLE PRECISION data type. See FLOAT data type.
Double quotes (" ")
delimiting identifiers 1-32, 9-68
escaping 1-19
in a literal collection 9-43
in a literal row 9-76
in a prepared statement string 14-5
in a quoted string 1-20
DROP DATABASE statement 12-18, 12-19, 12-20, 15-17
DROP FUNCTION statement 14-46
DROP PROCEDURE statement 14-46
dtaddinv() library function 6-36, 6-40
dtcurrent() library function 6-36, 6-42
dtcvasc() library function 6-37, 6-44
dtcvfmtasc() library function 6-37, 6-47
dtextend() library function 6-33, 6-37, 6-51
dtime structure 6-29
dtime_t typedef
defined constant 2-10
definition 6-29, 6-33
setting qualifiers for DATETIME 17-12
dtsubinv() library function 6-36, 6-57
dtsub() library function 6-36, 6-54
dttoasc() library function 6-37, 6-59
dttofmtasc() library function 6-37, 6-62, 16-62
Dynamic link library (DLL)
and import library 1-96
building 1-97
definition 1-95
ESQL client-interface 12-14
esqlauth.dll 1-89, 12-16
locating 1-96
Registry 1-89
sharing 12-21
with WHENEVER 11-45
Dynamic SQL
assembling the statement string 14-5
definition of 14-3, 14-4
describing the statement 14-10, 15-15
executing the statement 14-10
freeing resources 14-13
memory management 15-4
non-SELECT statements known at compile time 14-40
non-SELECT statements not known at compile time 15-25, 15-26
preparing the statement 14-5
SELECT statements known at compile time 14-43
SELECT statements not known at compile time 15-24, 15-26
statements not known at compile time 15-28
statements used 14-11, 14-15, 14-18, 16-4, 17-4
statements with user-defined data types 15-28
user-defined functions known at compile time 14-46
user-defined functions not known at compile time 15-27
Dynamic thread functions, registering 13-47
Dynamic thread library
creating 13-40
data types for 13-43
registering functions 13-47
Dynamic-management structure
sqlda structure 15-10, 17-3
system-descriptor area 15-5, 16-3
See also System-descriptor area; sqlda structure.
dynthr_init() function 13-49
dyn_sql sample program 11-59

E

-e preprocessor option 1-49, 1-55, 1-59
.ec file extension 1-10, 1-48, 1-81, 1-82
.ecp file extension 1-10, 1-48
-ED preprocessor option 1-52, 1-57, 1-61
elif preprocessor directive 1-12, 1-16
else preprocessor directive 1-12, 1-16
Empty string 3-6
END OF DATA condition. See NOT FOUND condition.
endif preprocessor directive 1-12, 1-16
Environment variable
CC8BITLEVEL 1-108
CLIENT_LOCALE 1-106
COLLCHAR 1-106
CPFIRST 1-68
DBALSBC 1-108
DBANSIWARN 1-60, 1-106, 11-23, 11-31, 12-18
DBASCIIBC 1-109
DBCENTURY 1-109, 6-11, 6-23, 6-44, 6-48, 6-63
DBCODESET 1-109
DBCONNECT 1-109
DBCSCONV 1-109
DBCSOVERRIDE 1-109
DBCSWIDTH 1-109
DBDATE 1-105, 6-6, 6-23, 6-48, 6-63
DBFLTMASK 1-109
DBLANG 1-106
DBMONEY 1-105, 5-30, 5-31, 5-37, 5-41, 5-44
DBMONEYSCALE 1-110
DBNLS 1-106
DBPATH 1-105, 12-26, 12-50
DBSS2 1-110
DBSS3 1-110
DBTEMP 1-105
DBTIME 1-105, 6-47, 6-62, 6-68, 6-74
DB_LOCALE 1-106
DELIMIDENT 1-33, 1-107
ESQLMF 1-108
FET_BUF_SIZE 1-108, 14-23
GL_DATE 1-108, 6-6, 6-23, 6-48, 6-63
GL_DATETIME 1-108
IFX_AUTOFREE 14-25
IFX_DEFERRED 14-32
in thread-safe application 13-25
INFORMIXC 1-78
INFORMIXCONRETRY 1-107
INFORMIXCONTIME 1-107
INFORMIXDIR 1-48, 1-64, 1-106, B-2
INFORMIXSERVER 1-105, 1-119, 12-7, 12-50, 12-68, 16-51, B-2
INFORMIXSQLHOSTS 12-7, 12-13, B-2
LANG 1-106
LC_COLLATE 1-106
LC_CTYPE 1-107
LC_MONETARY 1-107
LC_NUMERIC 1-107
LC_TIME 1-107
LD_LIBRARY_PATH 13-9, 13-50
OPTMSG 12-43
OPTOFC 14-37
PATH 1-97, B-2
precedence 1-112
retrieving 1-98
setting 1-98
THREADLIB 13-26, 13-27, 13-50
en_us.8859-1 locale Intro-4
eprotect utility
protecting SQL keywords 1-73
-u mode 1-69, 1-73
Error code
INFORMIX FIND ERROR utility 1-6
Error code, finderr utility 1-6
Error handling
retrieving an error message 11-48
role of sqlca.h 1-23
using in-line code 11-41
with optimized message transfers 12-45
See also Exception handling; Warnings.
Error message files Intro-13
Error messages
determining length of 11-11
Informix-specific 11-40, 11-54
obtaining parameters 11-29
redirecting 1-65
retrieving text of 11-10, 11-47, 11-48, 11-51
Errors. See Exceptions; Runtime errors; Warnings.
Escape character 1-19, 9-43, 9-76
Escape characters, multibyte filter for 1-6
ESQL client-interface DLL 12-14
contents of 1-95
description 1-89
ESQL client-interface library 1-85, 1-96
esql command
calling C preprocessor and compiler 1-10
compatibility issues 13-12
compile-only options 1-79
library options 13-6
linking options 1-87
options passed implicitly 1-83
preprocessing options 1-59
requirements for using 1-10, 1-48
steps it performs 1-47
syntax 1-48
syntax on UNIX systems 1-49
version information 1-55, 1-58
Windows options 1-91, 1-92
See also Compiler; Preprocessor.
ESQL preprocessor
stage1 1-9
ESQLAUTH sample program 12-16
esqlauth.c authorization file 12-15
esqlauth.dll ESQL client-interface DLL 1-89
esqlauth.dll Informix DLL 12-16
ESQLMF environment variable 1-108
ESQLMF.EXE multibyte filter 1-6
ESQL/C compiler. See Compiler; C compiler.
ESQL/C conditional compilation directives
processing of 1-9
ESQL/C data types
boolean 2-13
char 3-4
character data types 3-3
collection 2-4, 2-5, 2-12, 2-13, 9-4
date 2-4, 2-11, 6-3
datetime 2-4, 2-11, 6-28
decimal 2-4, 2-12, 4-3
defined constants for 2-7, 2-10, 15-22
double 2-4, 2-12, 5-5
fixchar 2-4, 2-11, 2-12, 3-4, 3-5
fixed binary 2-5, 2-13
float 2-4, 2-12, 5-5
floating-point data types 5-5
ifx_lo_t 2-5, 2-11, 2-13, 7-6
int8 2-5, 5-7
integer data types 5-4
interval 2-4, 2-12, 6-28
loc_t 2-4, 2-5, 2-11, 2-12, 8-5
long int 2-12, 5-4
lvarchar 2-5, 2-12, 2-13, 3-4, 3-9
row 2-5, 2-13, 9-48
short int 2-12, 5-4
string 2-4, 2-12, 3-4, 3-5
trailing blanks 3-5
var binary 2-5, 2-13
varchar 2-4, 2-12, 3-4, 3-6
ESQL/C define directives, processing of 1-9
ESQL/C host variables
using C preprocessor directives to define 1-10
ESQL/C include directives, preprocessing of 1-9
ESQL/C library functions
character and string functions 3-19
connection functions 12-93
database server control functions 12-35, 12-39, 12-47
DATE type functions 6-5
DATETIME type functions 6-38
DECIMAL type functions 4-8, 13-30
environment variable functions 1-98
error message functions 11-47
formatting functions 5-36
function prototypes 1-25
INT8 type functions 5-9
INTERVAL type functions 6-38
numeric formatting functions 5-36
size and alignment functions 2-23
smart large-object functions 7-33
See also Function library; Macro.
ESQL/C preprocessor, stage2 1-9
ESQL/C preprocessor. See Preprocessor.
ESQL/C program. See Program.
-EU preprocessor option 1-52, 1-57, 1-61
Exception handling
definition of 11-4
determining number of exceptions 11-8
displaying error text 11-40, 11-54
NOT FOUND condition 11-20, 11-35, 11-36, 11-45
retrieving error message text 11-10, 11-47
runtime errors 11-24, 11-38, 11-45
success condition 11-20, 11-34
using the WHENEVER statement 11-45
warning conditions 11-22, 11-37, 11-45
with sqlca structure 11-34
with SQLSTATE variable 11-19
See also Error handling; NOT FOUND condition; Runtime errors; Warnings.
Exclamation point (!), wildcard in smart-large-object filenames 7-42
.exe file extension 1-80, 1-94, 1-95, 12-21
EXEC SQL keywords
BEGIN DECLARE SECTION. See DECLARE SECTION.
END DECLARE SECTION. See DECLARE SECTION.
to declare host variables 1-27
with embedded SQL statements 1-17
with preprocessor directives 1-12
EXECUTE FUNCTION statement
associated with a cursor 14-14, 14-50, 14-51
defined statement constant 15-18, 16-23, 16-26, 17-27
executing a cursor function 14-50
executing a noncursor function 14-49
for user-defined functions 14-46, 14-48, 15-27
INTO host_var clause 14-48
known at compile time 14-45, 14-48
not known at compile time 15-24, 15-26
parameterized 14-52, 14-54, 15-26
with DESCRIBE 15-16, 15-27, 16-6, 17-7, 17-8
with dynamic-management structures 15-27
with sqlda structure 17-26
with system-descriptor area 16-22
See also User-defined function.
EXECUTE IMMEDIATE statement 11-39, 14-42, 14-47
EXECUTE PROCEDURE statement 12-34, 14-40, 14-46, 14-47, 14-52, 15-18, 15-26
See also User-defined procedure.
EXECUTE statement
INTO DESCRIPTOR clause 17-4, 17-15, 17-28
INTO host_var clause 11-31, 14-43, 14-49
INTO SQL DESCRIPTOR clause 16-4, 16-11, 16-22, 16-23
role in dynamic SQL 14-10
SQLCODE values 11-40
USING DESCRIPTOR clause 16-4, 17-4, 17-14, 17-31, 17-41, 17-42, 17-43
USING host_var clause 14-52
USING SQL DESCRIPTOR clause 16-11, 16-30, 16-43, 16-44, 16-45, 16-46
with noncursor functions known at compile time 14-49
with non-SELECT statements known at compile time 14-41
with singleton SELECT statements known at compile time 14-43
with user-defined procedures 14-47
exec() system call 12-58, 13-25
exit() system call 11-33, 11-44
Explicit connection
connection handle 12-94
default 12-26
definition of 12-17, 12-21
establishing 12-20, 12-95
identifying 12-31
limits of 12-94
starting 12-20
switching to 12-100
terminating 12-41, 12-98
when to use 12-21
with sqlexit() 12-65
Exporting runtime routines 1-90
Extended identifier 15-9, 15-13, 15-31
External function
definition 14-47
executing dynamically 14-49, 14-50, 16-23, 16-29, 17-28, 17-29
iterator function 14-50
See also User-defined function.
External procedure 14-47
See also User-defined procedure.
External routine 14-47
EXTYPEID descriptor field 15-9
EXTYPELENGTH descriptor field 15-9
EXTYPENAME descriptor field 15-9
EXTYPEOWNERLENGTH descriptor field 15-9
EXTYPEOWNERNAME descriptor field 15-9

F

-f processor option 1-55, 1-82
fclose() system call 1-64
Feature icons Intro-9
Features, product Intro-5
FetArrSize global variable 15-38
and FetBufSize 15-39
with a fetch array 15-35
FetBufSize global variable 14-23
and FetArrSize 15-39
Fetch array
allocating memory for 15-38
allocating memory, example 15-40
and simple large objects 15-34
description of 15-34
FetArrSize global variable 15-35
freeing memory 15-46
obtaining values from 15-43
sample program 15-36
use of loc_t structure 15-39
using 15-34
USING DESCRIPTOR clause 15-35
using sqlda structure with 15-35
with Deferred PREPARE and OPTOFC features 15-36
Fetch buffer 14-15, 14-20
FETCH statement
and NOT FOUND condition 11-20, 11-35
checking for truncation 11-31
fetching into a collection variable 9-28
getting values from a system-descriptor area 16-10
INTO DESCRIPTOR clause 17-28
INTO host_var clause 1-38, 11-31
INTO SQL DESCRIPTOR clause 16-28
optimizing 14-35
retrieving a row 14-15
USING DESCRIPTOR clause 17-4, 17-14, 17-18, 17-29, 17-34
USING SQL DESCRIPTOR clause 16-4, 16-11, 16-14, 16-15, 16-28, 16-37
warnings 11-31
with aggregate functions 11-31
with fetch array 15-34
with OPTOFC and Deferred PREPARE features 14-38
See also Fetch buffer; Fetching.
Fetching
CHAR values 3-11
character data 3-11
collection data 9-16
data conversion 2-15
DATETIME values 2-18, 6-33
determining rowid 11-30
INTERVAL values 2-18, 6-34
into char host variable 2-18, 3-11, 3-13, 3-17, 5-6, 6-35
into collection host variable 9-37, 9-41
into datetime host variable 6-33
into fixchar host variable 2-18, 3-11, 3-13, 3-17, 5-6, 6-35
into fixed binary host variable 10-22
into ifx_lo_t host variable 7-22
into interval host variable 6-34
into lvarchar host variable 10-14
into row host variable 9-73
into string host variable 2-18, 3-11, 3-13, 3-17, 5-6, 6-35
into var binary host variable 10-30
into varchar host variable 2-18, 3-11, 3-17, 5-6
NCHAR values 3-12
NVARCHAR values 3-15
row-type data 9-62
VARCHAR values 2-19, 3-13
See also SELECT statement; Cursor (database).
FET_BUF_SIZE environment variable 1-108, 14-23
File
copying a smart large object to 7-41
copying to a smart large object 7-44
getting name for a smart large object 7-50
named file as a simple large-object location 8-26, 16-33, 16-34
open file as a simple large-object location 8-21
File extension
.a 1-77
.c 1-9, 1-59, 1-77, 1-79, 1-81, 1-87, 13-14
.def 1-80, 1-85, 1-87
.dll 1-80, 1-94, 1-95, 12-21
.ec 1-10, 1-48, 1-81, 1-82
.ecp 1-48
.exe 1-80, 1-94, 1-95, 12-21
.h 1-14
.icp 1-50
.lib 1-80
.o 1-76, 1-87
.obj 1-80, 1-81
.rc 1-80, 1-87, 1-89
.res 1-80, 1-87, 1-89
.sl 13-13
.so 13-8, 13-13
Filename
C object file 1-80
C source file 1-79
compiled resource file 1-80, 1-87
ESQL/C executable 1-55, 1-80
ESQL/C libraries 1-55, 1-87
include file 1-57
log file 1-58
module-definition file 1-80, 1-87
options for 1-59
project file 1-55, 1-82
resource file 1-80, 1-87
response file 1-56, 1-83
runtime library 1-93
system library 1-80
user-defined library 1-80
File-open mode flags 8-20
finderr utility Intro-13, 1-6
fixchar data type
corresponding SQL data type 2-4, 2-11, 2-12
defined constant 2-10
definition of 3-4, 3-5
fetching into 2-18, 3-11, 3-13, 3-17, 5-6, 6-35
for boolean values 2-14
inserting from 3-12, 3-14, 3-17, 3-18
with ANSI-compliant database 3-18
See also CHAR data type.
fixed binary data type
checking for null 10-23
corresponding SQL data type 2-5, 2-13
declaration 10-18
defined constant 2-11
fetching into 10-22
for smart large objects. See ifx_lo_t data type.
inserting from 10-21
setting to null 10-22
use with smart large objects 7-7
See also Fixed-length opaque data type; Smart large-object data type.
Fixed-length opaque data type
declaring host variable for 10-18
inserting 10-13, 10-22
selecting 10-14, 10-23
See also fixed binary data type; Varying-length opaque data type.
Fixed-point decimals 2-20, 2-22
FLOAT data type
corresponding ESQL/C data type 2-4, 2-12, 5-5
data conversion 2-19, 2-20, 2-21
defined constant 2-8, 2-9, 15-21
determining how stored 11-15, 11-23, 11-30, 12-28
number of decimal digits 2-18, 5-6
See also double data type.
float data type
corresponding SQL data type 2-4, 2-12, 5-5
data conversion 2-20
defined constant 2-10
passed as double 5-5
See also SMALLFLOAT data type.
Floating-point decimals 2-18, 2-20, 2-22, 4-45, 5-6, 5-26
FLUSH statement 9-24, 14-19, 16-35, 17-32
fopen() system call 1-64
for 1-6
fork() system call 8-62, 12-57, 13-25
Formatting function
rdefmtdate() 6-10
rfmtdate() 6-14
rfmtdec() 5-37
rfmtdouble() 5-41
rfmtlong() 5-44
fread() system call 1-64
FREE statement
freeing cursor resources 14-13, 14-15, 14-19
freeing statement-identifier resources 14-13
role in dynamic SQL 14-13
Freeing a cursor automatically 14-24
Freeing memory, fetch array 15-46
free() system call
freeing a simple large-object memory buffer 8-14
freeing an sqlda structure 17-25
freeing column data buffer 17-25
Function
callback 12-37
cursor 14-48, 14-50
iterator 14-50
noncursor 14-48, 14-49
parameters 14-19, 16-62
signal handler 12-35
Function cursor
definition of 14-16
fetch buffer 14-20
statements that manage 14-15
using 14-50
with sqlda structure 17-28
with system-descriptor area 16-28
Function libraries, for ESQL/C 1-7
Function library
bycmpr() 3-21
bycopy() 3-24
byfill() 3-26
byleng() 3-28
decadd() 4-9
deccmp() 4-11
deccopy() 4-14
deccvasc() 4-16
deccvdbl() 4-19
deccvint() 4-21
deccvlong() 4-23
decdiv() 4-25
dececvt() 4-28, 13-25, 13-30, 13-31
decfcvt() 4-28, 13-25, 13-30, 13-31
decmul() 4-35
decround() 4-37
decsub() 4-40
dectoasc() 4-42
dectodbl() 4-45
dectoint() 4-47
dectolong() 4-50
dectrunc() 4-52
dtaddinv() 6-40
dtcurrent() 6-42
dtcvasc() 6-44
dtcvfmtasc() 6-47
dtextend() 6-51
dtsubinv() 6-57
dtsub() 6-54
dttoasc() 6-59
dttofmtasc() 6-62, 16-62
GetConnect() 12-93, 12-95
ifx_cl_card() 9-45
ifx_dececvt() 13-25, 13-31
ifx_decfcvt() 13-25, 13-31
ifx_getcur_conn_name() 12-48
ifx_getenv() 1-103
ifx_getserial8() 5-10
ifx_int8add() 5-12
ifx_int8cmp() 5-13
ifx_int8copy() 5-14
ifx_int8cvasc() 5-15
ifx_int8cvdbl() 5-17
ifx_int8cvdec() 5-18
ifx_int8cvint() 5-19
ifx_int8cvlong() 5-20
ifx_int8div() 5-21
ifx_int8mul() 5-22
ifx_int8sub() 5-23
ifx_int8toasc() 5-24
ifx_int8todbl() 5-26
ifx_int8todec() 5-27
ifx_int8toint() 5-28
ifx_int8tolong() 5-29
ifx_lo_alter() 7-36
ifx_lo_close() 7-38
ifx_lo_col_info() 7-39
ifx_lo_copy_to_file() 7-41, 9-45
ifx_lo_copy_to_lo() 7-44
ifx_lo_create() 7-46
ifx_lo_def_create_spec() 7-49
ifx_lo_filename() 7-50
ifx_lo_from_buffer() 7-52
ifx_lo_open() 7-52, 7-53
ifx_lo_readwithseek() 7-57
ifx_lo_read() 7-55
ifx_lo_release() 7-59
ifx_lo_seek() 7-61
ifx_lo_specget_estbytes() 7-64
ifx_lo_specget_extsz() 7-66
ifx_lo_specget_flags() 7-67
ifx_lo_specget_maxbytes() 7-69
ifx_lo_specget_sbspace() 7-71
ifx_lo_specset_estbytes() 7-73
ifx_lo_specset_extsz() 7-75
ifx_lo_specset_flags() 7-77
ifx_lo_specset_maxbytes() 7-79
ifx_lo_specset_sbspace() 7-80
ifx_lo_spec_free() 7-63
ifx_lo_stat() 7-81
ifx_lo_stat_atime() 7-83
ifx_lo_stat_cspec() 7-84
ifx_lo_stat_ctime() 7-86
ifx_lo_stat_free() 7-87
ifx_lo_stat_mtime_sec() 7-88
ifx_lo_stat_refcnt() 7-89
ifx_lo_stat_size() 7-91
ifx_lo_tell() 7-92
ifx_lo_to_buffer() 7-93
ifx_lo_truncate() 7-95
ifx_lo_writewithseek() 7-98
ifx_lo_write() 7-96
ifx_putenv() 1-101
incvasc() 6-65
incvfmtasc() 6-68
intoasc() 6-71
intofmtasc() 6-74, 16-62
invdivdbl() 6-77
invdivinv() 6-80
invextend() 6-82
invmuldbl() 6-85
ldchar() 3-30, 8-67
rdatestr() 6-6
rdayofweek() 6-8
rdefmtdate() 6-10
rdownshift() 3-32
ReleaseConnect() 12-93, 12-98
rfmtdate() 6-14, 16-62
rfmtdec() 5-37, 16-62
rfmtdouble() 5-41
rfmtlong() 5-44
rgetlmsg() 11-48
rgetmsg() 11-51
risnull() 1-43, 2-24
rjulmdy() 6-17
rleapyear() 6-19
rmdyjul() 6-21
rsetnull() 2-27
rstod() 3-34
rstoi() 3-36
rstol() 3-38
rstrdate() 6-23
rtoday() 6-26
rtypalign() 2-30, 17-12, 17-23
rtypmsize() 2-33, 17-12, 17-23
rtypname() 2-36
rtypwidth() 2-39
rupshift() 3-40
SetConnect() 12-93, 12-100
sqgetdbs() 12-49
sqlbreakcallback() 12-37, 12-54
sqlbreak() 12-34, 12-52, 12-70
sqldetach() 12-33, 12-41, 12-57, 13-25
sqldone() 12-33, 12-64, 12-70
sqlexit() 12-41, 12-65
sqlsignal() 12-66
sqlstart() 12-20, 12-65, 12-68
stcat() 3-42, 14-7
stchar() 3-44
stcmpr() 3-46
stcopy() 3-48, 14-7
stleng() 3-50
See also Macro.
Functions
dynamic thread library 13-40
dynamic thread, registering 13-40

G

-G preprocessor option 1-52, 1-57, 1-65
-g preprocessor option 1-52, 1-57, 1-65
GET DESCRIPTOR statement
getting COUNT field 16-14, 16-29
getting fields 16-4, 16-10
getting row values 16-14
setting COUNT field 16-10
with OPTOFC and Deferred PREPARE features 14-38
See also System-descriptor area.
GET DIAGNOSTICS statement
and OPTOFC feature 14-36
ANSI SQL compliance 11-6
description 11-7
examples of use 11-9, 11-12, 11-26, 11-55
exception information 11-9
retrieving multiple exceptions 11-25
RETURNED_SQLSTATE field 11-13
SQLCODE variable 11-13
SQLSTATE variable 11-12
statement information 11-7
X/Open compliance 11-6
See also Diagnostics area.
getcd_me sample program 8-15
getcd_nf sample program 8-27
getcd_of sample program 8-22
GetConnect() library function 12-93, 12-95
Global ESQL/C variables 1-116
Global Language Support (GLS) Intro-4
Global Language Support (GLS) environment
character data types for host variables 3-3
inserting character data 3-12, 3-15
naming host variables 1-28
naming indicator variables 1-45
transfering character data 3-11
Global variable
FetBufSize 14-23
OptMsg 12-43
GLS. See Global Language Support (GLS) environment.
gls.h header file, definition of 1-22
GL_DATE environment variable 1-108, 6-6, 6-23, 6-48, 6-63
GL_DATETIME environment variable 1-108

H

.h file extension 1-14
Header file
automatic inclusion 1-26
collct.h 1-24
datetime.h 1-22
decimal.h 1-22
gls.h 1-22
ifxcexp.h 1-25
ifxgls.h 1-24
int8.h 1-24, 5-7
list of 2-11
location of 1-22
locator.h 1-23, 7-7
login.h 1-25, 1-105, 12-14
pthread.h 13-25
sqlca.h 1-23
sqlda.h 1-23, 1-26
sqlhdr.h 1-23, 1-26, 13-14
sqliapi.h 1-23
sqlproto.h 1-23, 1-25
sqlstype.h 1-23
sqltypes.h 1-23
sqlxtype.h 1-23
syntax for including 1-14, 1-26
system 1-14, 1-118
value.h 1-24
varchar.h 1-24
xa.h 1-24
See also individual header file names.
Hold cursor 9-21, 14-15, 14-18
HOST network parameter 1-107, 12-14
Host variable
array of 1-36
arrays of 1-36
as ANSI-style parameter 1-40
as C structure 1-37
as cursor name 14-19
as function parameter 14-19, 16-62
as input parameter 14-52
as pointer 1-39
as routine argument 14-45
as SQL identifier 1-32
assigning a value to 1-32
based on definitions in C header files 1-67
boolean data type 2-13
case sensitivity 1-18
char data type 2-19, 3-4, 6-35
choosing data type for 1-28, 2-3, 2-10, 15-22, 17-15
collection data type 9-4
date data type 6-3
datetime data type 6-29
decimal data type 4-3
declaring 1-27
fetching DATETIME value 2-18
fetching INTERVAL value 2-18
fetching VARCHAR value 2-19
fixchar data type 2-19, 3-5, 6-35
fixed binary data type 10-18
ifx_lo_t data type 7-7
in embedded SQL 1-21
in EXECUTE FUNCTION 14-49, 14-50
in GLS environment 1-28
in nonparameterized SELECT 14-43, 14-45
in parameterized DELETE or UPDATE 14-52
in parameterized EXECUTE FUNCTION 14-54
in parameterized SELECT 14-54
in typedef expressions 1-38
indicator variable. See Indicator variable.
initializing 1-29
inserting DATETIME value 2-18
inserting INTERVAL value 2-18
inserting VARCHAR 2-19
int8 data type 5-7
interval data type 6-30, 6-33, 6-34
loc_t data type 8-5
lvarchar data type 3-9, 10-6
naming 1-28
row data type 9-48
scope of 1-29
string data type 2-19, 3-5, 6-35
truncation of 1-44
using data conversion 2-15
var binary data type 10-23
varchar data type 3-6
with float values 5-6
with null values 1-35, 2-24, 2-27, 10-41, 10-46
HostInfoStruct structure
AskPassAtConnect field 12-14
definition of 12-14
Host field 12-14
InfxServer field 12-14
Options field 12-15
Pass field 12-14
Protocol field 12-15
Service field 12-15
User field 12-14
Hyphen
as formatting character 5-30
double(--) 1-21

I

-I preprocessor option 1-53, 1-57, 1-63
-icheck preprocessor option 1-43, 1-52, 1-57, 1-63
Icons
comment Intro-8
feature Intro-9
platform Intro-9
.icp file extension 1-50
IDATA descriptor field 15-8, 16-36
ifdef preprocessor directive 1-12, 1-16
ifndef preprocessor directive 1-12, 1-16
ifxcexp.h header file, definition of 1-25
ifxgls.h header file, definition of 1-24
IFX_AUTOFREE environment variable 14-25
client only 14-37
ifx_cl_card() library function 9-45
ifx_dececvt() library function 13-25, 13-31
ifx_decfcvt() library function 13-25, 13-31
IFX_DEFERRED_PREPARE environment variable 14-32
client only 14-37
ifx_getcur_conn_name() library function 12-48
ifx_getenv() library function 1-103
ifx_getserial8() library function 5-10
ifx_getversion utility 13-13
ifx_int8add() library function 5-8, 5-12
ifx_int8cmp() library function 5-8, 5-13
ifx_int8copy() library function 5-8, 5-14
ifx_int8cvasc() library function 5-8, 5-15
ifx_int8cvdbl() library function 5-8, 5-17
ifx_int8cvdec() library function 5-8, 5-18
ifx_int8cvflt() library function 5-8
ifx_int8cvint() library function 5-8, 5-19
ifx_int8cvlong() library function 5-8, 5-20
ifx_int8div() library function 5-8, 5-21
ifx_int8mul() library function 5-8, 5-22
ifx_int8sub() library function 5-8, 5-23
ifx_int8toasc() library function 5-8, 5-24
ifx_int8todbl() library function 5-8, 5-26
ifx_int8todec() library function 5-8, 5-27
ifx_int8toflt() library function 5-8
ifx_int8toint() library function 5-8, 5-28
ifx_int8tolong() library function 5-8, 5-29
ifx_int8_t structure. See int8 data type.
ifx_lo_alter() library function 7-36
lightweight I/O 7-26
ifx_lo_close() library function 7-29, 7-38
lightweight I/O 7-26
ifx_lo_col_info() library function 7-14, 7-39
ifx_lo_copy_to_file() library function 7-41, 7-50, 9-45
ifx_lo_copy_to_lo() library function 7-44
ifx_lo_create() library function 7-14, 7-16, 7-24, 7-46
duration of open 7-27
lightweight I/O 7-25
locks on smart large objects 7-27
ifx_lo_create_spec_t structure. See LO-specification structure.
ifx_lo_def_create_spec() library function 7-7, 7-14, 7-49
ifx_lo_filename() library function 7-50
ifx_lo_from_buffer() library function 7-19, 7-33, 7-52
ifx_lo_open() library function 7-24, 7-52, 7-53
duration of open 7-27
lightweight I/O 7-25
locks on smart large objects 7-27
ifx_lo_readwithseek() library function 7-28, 7-57
ifx_lo_read() library function 7-28, 7-55
ifx_lo_release 7-52
ifx_lo_release() library function 7-19, 7-34, 7-59
ifx_lo_seek() library function 7-28, 7-29, 7-61
ifx_lo_specget_estbytes() library function 7-9, 7-64
ifx_lo_specget_extsz() library function 7-9, 7-66
ifx_lo_specget_flags() library function 7-11, 7-67
ifx_lo_specget_maxbytes() library function 7-9, 7-69
ifx_lo_specget_sbspace() library function 7-9, 7-71
ifx_lo_specset_estbytes() library function 7-9, 7-73
ifx_lo_specset_extsz() library function 7-9, 7-75
ifx_lo_specset_flags() library function 7-11, 7-77
ifx_lo_specset_maxbytes() library function 7-9, 7-79
ifx_lo_specset_sbspace() library function 7-9, 7-80
ifx_lo_spec_free() library function 7-16, 7-63
ifx_lo_stat() library function 7-30, 7-81
ifx_lo_stat_atime() library function 7-31, 7-83
ifx_lo_stat_cspec() library function 7-31, 7-84
ifx_lo_stat_ctime() library function 7-31, 7-86
ifx_lo_stat_free() library function 7-32, 7-87
ifx_lo_stat_mtime_sec() library function 7-31, 7-88
ifx_lo_stat_refcnt() library function 7-31, 7-89
ifx_lo_stat_size() library function 7-31, 7-91
ifx_lo_stat_t structure. See LO-status structure.
ifx_lo_t data type
corresponding SQL data type 2-5, 2-11, 2-13
declaration 7-7
definition of 7-6
fetching into 7-22
inserting from 7-17
use of fixed binary data type 7-7, 10-48
See also BLOB data type; CLOB data type.
ifx_lo_t structure. See LO-pointer structure.
ifx_lo_tell() library function 7-28, 7-29, 7-92
ifx_lo_to_buffer() function 7-35
ifx_lo_to_buffer() library function 7-19, 7-93
ifx_lo_truncate() library function 7-95
ifx_lo_writewithseek() library function 7-29, 7-98
ifx_lo_write() library function 7-29, 7-96
ifx_putenv() function 12-43, 14-37
ifx_putenv() library function 1-101
ifx_release() library function 7-34
ifx_varlena_t structure 10-25
See also var binary data type.
ifx_var_alloc() function 10-33
ifx_var_dealloc() function 10-35
ifx_var_flag() function 10-37
ifx_var_getdata() function 10-39
ifx_var_getlen() function 10-40
ifx_var_isnull() function 10-31, 10-41
ifx_var_setdata() function 10-42
ifx_var_setlen() function 10-44
ifx_var_setnull() function 10-29, 10-46
ILENGTH descriptor field 15-8, 16-36
ILOGIN sample program 1-112
ILogin sample program 1-6
Implicit connection
default 12-26
definition of 12-19
starting 12-20, 12-68
terminating 12-41
with sqlexit() 12-65
Import library 1-96
include directives, ESQL/C
preprocessing of 1-9
Include files
header files as 1-22
preprocessor directive for 1-13
search path 1-64
specifying search path 1-63
syntax for 1-14, 1-26
include preprocessor directive 1-12, 1-13, 1-26
#include preprocessor statement 1-26
incvasc() library function 6-37, 6-65
incvfmtasc() library function 6-37, 6-68
INDICATOR descriptor field 15-8, 15-31, 16-30, 16-36
INDICATOR keyword 1-45, 1-46, 14-44
Indicator variable
checking for missing indicator 1-63
declaring 1-44
definition of 1-42
determining null data 1-36, 1-43, 1-44
in GLS environment 1-45
in INTO clause of EXECUTE 14-44
indicating truncation 1-44, 3-11, 3-13, 3-15, 3-17, 6-35, 15-31
inserting null values 1-43
main variable 1-42
specifying in SQL statement 1-45
valid data types 1-44
with opaque data type 15-31
with sqlda structure 15-13, 17-8, 17-10, 17-30, 17-33
with system-descriptor area 15-8, 16-30, 16-36
See also Null value; Truncated value.
Industry standards, compliance with Intro-15
InetLogin structure
application example 1-111, 12-12
AskPassAtConnect field 1-108, 12-14, 12-15
CC8BitLevel field 1-108
Client_Loc field 1-106
CollChar field 1-106
connection information in 12-8
ConRetry field 1-107
ConTime field 1-107
DbAlsBc field 1-108
DbAnsiWarn field 1-106
DbApiCode field 1-108
DbAsciiBc field 1-109
DbCentury field 1-109
DbCodeset field 1-109
DbConnect field 1-109
DbCsConv field 1-109
DbCsOverride field 1-109
DbCsWidth field 1-109
DbDate field 1-105
DbFltMsk field 1-109
DbLang field 1-106
DbMoney field 1-105
DbMoneyScale field 1-110
DbNls field 1-106
DbPath field 1-105
DbSS2 field 1-110
DbSS3 field 1-110
DbTemp field 1-105
DbTime field 1-105
DB_Loc field 1-106
DelimIdent field 1-107
description of 1-104
determining default database server 1-105
EsqlMF field 1-108
FetBuffSize field 1-108
fields of 1-105
GlDate field 1-108
GlDateTime field 1-108
Host field 1-107, 12-14
InformixDir field 1-106
InformixSqlHosts field 1-108
InfxServer field 1-105, 12-11, 12-14, 12-95
Lang field 1-106
Lc_Collate field 1-106
Lc_CType field 1-107
Lc_Monetary field 1-107
Lc_Numeric field 1-107
Lc_Time field 1-107
Options field 1-108, 12-15
Pass field 1-107, 12-14
precedence 1-112
Protocol field 1-108, 12-15
Service field 1-108, 12-15
setting fields 1-110
User field 1-107, 12-14
with HostInfoStruct 12-14
INFORMIX FIND ERROR utility 1-6
Informix general library
actual name 13-7, 13-8
API version 13-14
choosing version of 13-5
compatibility issues 13-12
default version 13-9
description of 13-3
libasf 1-88, 13-5, 13-13
libgen 1-88, 13-5, 13-13
libgls 1-88, 13-5, 13-13
libos 1-88, 13-5, 13-13
libsql 1-88, 13-5, 13-13
libtgen 13-13
libtos 13-13
libtsql 13-13
linking 13-7, 13-9, 13-26
location of 13-6
naming 13-7, 13-8
obtaining version of 13-13
shared 13-3, 13-8, 13-10
static 13-3, 13-7
symbolic name 13-8
thread-safe 13-3
thread-safe shared 13-28
thread-safe static 13-28
Informix library. See Informix general library.
INFORMIX Registry subkey
connection information in 1-112
Informix Server Information dialog box (Setnet32 utility) 12-95
Informix SQL data types. See SQL data types.
INFORMIXC environment variable 1-78
INFORMIXCONRETRY environment variable 1-107
INFORMIXCONTIME environment variable 1-107
INFORMIXDIR
location of demonstration programs 1-6
value of in a Windows environment 1-6
INFORMIXDIR environment variable 1-48, 1-64, 13-6, 13-13, B-2
in InetLogin structure 1-106
location of DLLs 1-89
location of esqlauth.c file 12-16
location of executables 1-6
location of function libraries 1-6
location of import library 1-84
location of include files 1-84
required 1-10
INFORMIXDIR/bin directory B-2
INFORMIX-OnLine Dynamic Server 11-15, 11-23
INFORMIXSERVER environment variable 1-119, 12-7, 12-50, 12-68, 16-51, B-2
and GetConnect() 12-95
in HostInfoStruct structure 12-14
in InetLogin structure 1-105
Informix-specific status code. See SQLCODE variable.
INFORMIXSQLHOSTS environment variable 1-108, 12-7, 12-13, B-2
INFORMIX-Universal Server
checking for secondary mode 11-15, 11-23, 11-30, 12-28
DATASKIP feature 1-43, 11-15, 11-23, 11-31
determining type 11-15, 11-23
interrupting 12-37, 12-54
Input parameter
definition of 14-7, 14-51
in singleton SELECT 14-44
not known at compile time 15-24
specifying value in a system-descriptor area 16-10
specifying value in an sqlda structure 17-14
specifying values for EXECUTE FUNCTION statements 14-52, 14-54, 15-26
specifying values for non-SELECT statements 14-52, 15-26
specifying values for SELECT statements 14-52, 14-54, 15-26
specifying values for user-defined routines 14-45
with DESCRIBE 16-6
Insert buffer 14-18, 14-20
Insert cursor 17-14
definition of 14-18
description of 14-20
executing with sqlda structure 17-31
executing with system-descriptor area 16-35
for collection variable 9-21
input parameters in VALUES clause 16-11
insert buffer 14-20
required for 14-18
statements that manage 14-18
with system-descriptor area 16-11
INSERT statement
and NOT FOUND condition 11-21, 11-36
associated with a cursor 14-18
collection columns 9-40
Collection Derived Table clause 9-18, 9-64
defined statement constant 15-17
determining estimated cost of 11-30
determining number of rows inserted 11-8, 11-30
determining rowid 11-30
dynamic 14-18, 14-40, 14-52, 15-25
executing with sqlda structure 17-31
executing with system-descriptor area 16-30
failing to access rows 11-29
inserting CHAR data 3-12, 3-18
inserting collection data 9-18, 9-38, 9-41
inserting NCHAR data 3-12
inserting NVARCHAR data 3-15
inserting opaque-type data 10-13, 10-22, 10-28, 15-29
inserting row-type data 9-64, 9-74
inserting smart large-object data 7-17
inserting VARCHAR data 3-14
interrupting 12-34, 12-52
known at compile time 14-40, 14-52
not known at compile time 15-24
obtaining generated SERIAL value 11-29
parameterized 14-52
row-type columns 9-71
VALUES clause 1-38, 14-52
with DESCRIBE 15-16, 16-6, 17-7, 17-8
with null values 1-43
Inserting
CHAR values 3-12
character data 3-11, 3-18
data conversion 2-15
DATETIME values 2-18, 6-33
from char host variable 3-12, 3-14, 3-17
from datetime host variable 6-33
from fixchar host variable 3-12, 3-14, 3-17
from fixed binary host variable 10-21
from fixed-size lvarchar 10-12
from ifx_lo_t host variable 7-17
from interval host variable 6-34
from string host variable 3-12, 3-14, 3-17
from var binary host variable 10-28
from varchar host variable 3-12, 3-14, 3-17
INTERVAL values 2-18, 6-34
into collection column 9-38, 9-40, 9-41
into collection variable 9-18
into row variable 9-64
into row-type column 9-71, 9-74
opaque-type values 15-29
smart large-object data 7-17
VARCHAR values 2-19, 3-14
int data type 2-10
converting from decimal 4-47
converting from int8 5-28
converting to decimal 4-21
See also short int data type; long int data type.
INT data type. See INTEGER data type.
INT8 data type
corresponding ESQL/C data type 2-5, 2-13, 5-4, 5-5
data conversion 5-8
declaring host variable for 5-7
defined constant 2-9
ifx_getserial8() 5-10
ifx_int8add() 5-12
ifx_int8cmp() 5-13
ifx_int8copy() 5-14
ifx_int8cvasc() 5-15
ifx_int8cvdbl() 5-17
ifx_int8cvdec() 5-18
ifx_int8cvint() 5-19
ifx_int8cvlong() 5-20
ifx_int8div() 5-21
ifx_int8mul() 5-22
ifx_int8sub() 5-23
ifx_int8toasc() 5-24
ifx_int8todbl() 5-26
ifx_int8todec() 5-27
ifx_int8toint() 5-28
ifx_int8tolong() 5-29
int8 structure shown 5-7
See also int8 data type.
int8 data type
addition 5-12
arithmetic operations 5-8
comparing 5-13
converting from decimal 5-18
converting from double 5-17
converting from integer 5-19
converting from long int 5-20
converting from text 5-15
converting to decimal 5-27
converting to double 5-26
converting to int 5-28
converting to long int 5-29
converting to text 5-24
copying 5-14
corresponding SQL data type 2-5
data conversion 5-8
declaration 5-7
defined constant 2-10
division 5-21
getting SERIAL8 values 5-10
multiplication 5-22
subtraction 5-23
See also INT8 data type; SERIAL8 data type.
int8.h header file 2-13, 5-7
int8.h header file, definition of 1-24
INTEGER data type
corresponding ESQL/C data type 2-4, 2-12, 5-4
data conversion 2-19, 2-20, 2-21
defined constant 2-8, 2-9, 15-21
See also int data type.
INTERVAL data type
ANSI-standard qualifiers 6-36
classes of 6-34, 6-36
corresponding ESQL/C data type 2-4, 2-12
data conversion 2-18, 6-33, 6-35, 6-37
declaring host variables for 6-30
defined constant 2-8
dynamically allocating structures for 17-12
fetching 2-18, 6-34
incvasc() 6-65
incvfmtasc() 6-68
inserting 2-18, 6-34
intoasc() 6-71
intofmtasc() 6-74
invdivdbl() 6-77
invdivinv() 6-80
invextend() 6-82
invmuldbl() 6-85
macros 6-31
precision of underlying decimal value 6-29
qualifiers 6-30, 6-36
role of datetime.h 1-22, 2-12
See also interval data type.
interval data type
arithmetic operations 6-36
corresponding SQL data type 2-4
data conversion 6-37
declaration 6-30
defined constant 2-10
definition of 6-28
fetching into 6-34
inserting from 6-34
role of datetime.h 2-12
See also INTERVAL data type; intrvl_t typedef.
intoasc() library function 6-37, 6-71
intofmtasc() library function 6-37, 6-74, 16-62
intrvl structure 6-30
intrvl_t typedef
defined constant 2-10
definition of 6-30, 6-34
setting qualifier for INTERVAL 17-12
invdivdbl() library function 6-36, 6-77
invdivinv() library function 6-36, 6-80
invextend() library function 6-34, 6-82
invmuldbl() library function 6-36, 6-85
ISAM error code
and sqlerrd 11-29
and sqlerrd[1] 11-38
retrieving message text 11-10, 11-48, 11-51
See also SQLCODE variable.
ISDISTINCTBOOLEAN distinct-bit macro 15-32
ISDISTINCTLVARCHAR distinct-bit macro 15-32
ISDISTINCTTYPE distinct-bit macro 15-32
ISO 8859-1 code set Intro-4
ISO standards. See ANSI SQL standards.
Item descriptor
DATA field. See DATA descriptor field.
definition of 15-5
EXTYPEID field 15-9
EXTYPELENGTH field 15-9
EXTYPENAME field 15-9
EXTYPEOWNERLENGTH field 15-9
EXTYPEOWNERNAME field 15-9
getting field values 16-10
IDATA field 15-8, 16-36
ILENGTH field 15-8, 16-36
INDICATOR field 15-8, 15-31, 16-30, 16-36
ITYPE field 15-8, 16-36
LENGTH field. See LENGTH descriptor field.
NAME field 15-8, 16-6, 16-21
NULLABLE field 15-8, 16-6, 16-21
PRECISION field 15-8, 16-6
SCALE field 15-8, 16-6
setting fields 16-9
setting maximum number 16-5
SOURCEID field 15-9, 15-32
SOURCETYPE field 15-9, 15-32
TYPE field. See TYPE descriptor field.
See also individual field names.
Iterator function 14-50, 16-29, 17-29
ITYPE descriptor field 15-8, 16-9, 16-36

L

l preprocessor option 1-76
-l processor option 1-80, 1-88
LANG environment variable 1-106
Large object. See Simple large-object data type; Smart large-object data type.
LC_COLLATE environment variable 1-106
LC_CTYPE environment variable 1-107
LC_MONETARY environment variable 1-107
LC_NUMERIC environment variable 1-107
LC_TIME environment variable 1-107
ldchar() library function 3-30, 8-67
LD_LIBRARY_PATH environment variable 13-9
LENGTH descriptor field
after a DESCRIBE 16-6, 16-21
definition of 15-7
for varchar data 3-7
inserting opaque-type data 15-29
setting input parameter length 16-36, 16-41
Less than (<) sign 5-30
.lib file extension 1-80
libasf Informix library 1-88, 13-5, 13-13
libgen Informix library 1-88, 13-5, 13-13
libgls Informix library 1-88, 13-5, 13-13
libos Informix library 1-88, 13-5, 13-13
Libraries
Informix. See Informix general library.
of ESQL/C functions 1-7
runtime search path 13-9
shared 13-3, 13-8, 13-10
static 13-3, 13-7
thread-safe 13-3
thread-safe shared 13-28
thread-safe static 13-28
Library
creating dynamic thread 13-40
ESQL client-interface 1-85, 1-96
import 1-96
runtime 1-93
static-link 1-95, 1-96
system 1-80
Library function. See ESQL/C library functions; Function library.
-libs preprocessor option 1-50
-libs processor option 1-55, 1-87
libsql Informix library 1-88, 13-5, 13-13
libtgen Informix library 13-13
libtos Informix library 13-13
libtsql Informix library 13-13
Lightweight I/O
for smart large objects 7-25
specifying for all smart large objects 7-26
switching to buffered I/O 7-26
Limits, Informix product Intro-14
Line wrapping 1-74
Linker
linking the ESQL client-interface DLL 1-96
marking beginning of arguments 1-80
options invoked implicitly 1-83
passing arguments to 1-88
LIST data type
accessing 9-4
after a DESCRIBE 17-8
corresponding ESQL/C data type 2-5, 2-13
declaring host variable for 9-6
defined constant 2-9
definition of 9-4
inserting many elements into 9-20
See also Collection data type (SQL).
LO file descriptor
deallocating 7-29
description of 7-20
ESQL/C functions for 7-20
LO handle, deallocating 7-59
-local preprocessor option 1-53, 1-57, 1-65, 14-6
Locale Intro-4
Locating a simple large object
in a client-server environment 8-10
in a named file 8-26, 16-33, 16-34
in an open file 8-21
in memory 8-11, 16-55
locations for 8-10
on optical disc 8-40
with user-defined functions 8-31
Locator structure
definition of 8-5, 8-6
fields of 8-8
lc_union structure 8-8, 8-11, 8-19, 8-32
loc_buffer field 8-11, 8-13
loc_bufsize field 8-11, 8-12, 8-13, 16-55
loc_close field 8-32, 8-33, 8-34, 8-39
loc_currdata_p field 8-11
loc_fd field 8-19, 8-21, 8-25
loc_fname field 8-19, 8-26
loc_indicator field 8-9, 8-14
loc_loctype field. See loc_t.loc_loctype field.
loc_mflags field 8-11, 8-12
loc_mode field 8-19
loc_oflags field. See loc_t.loc_oflags field.
loc_open field 8-20, 8-31, 8-33, 8-34, 8-35
loc_position field 8-19, 8-20
loc_read field 8-31, 8-34, 8-36
loc_size field. See loc_t.loc_size field.
loc_status field 8-9, 8-13, 8-20, 8-26
loc_type field 8-9
loc_user_env field 8-32
loc_write field 8-31, 8-33, 8-37
loc_xfercount field 8-32
memory buffer 8-12
See also loc_t data type.
locator.h header file
access-mode constants 7-23
create-time constants 7-10
data types defined 2-11, 2-12, 2-13, 8-7
definition of 1-23
description of 7-7
field name shortcuts 8-11, 8-20
file-location constants 7-41, 7-44
file-open mode flags 8-20
location constants 8-10
LOC_ALLOC constant 8-13
LO-pointer structure 7-18
LO-specification structure 7-8
LO-status structure 7-30
whence constants 7-58, 7-62, 7-99
LOCFILE location constant 8-10, 8-21
LOCFNAME location constant 8-10, 8-26
Locks, on smart large objects 7-26
LOCMEMORY location constant 8-10, 8-11, 16-55
LOCUSER location constant 8-10, 8-31
LOC_ALLOC locator constant 8-13
LOC_APPEND locator mask 8-20, 8-22
LOC_DESCRIPTOR locator mask 8-40
LOC_RONLY locator mask 8-20, 8-25, 8-34
loc_t data type
corresponding SQL data type 2-4, 2-5
declaration 8-5
defined constant 2-10
definition of 8-5
role of locator.h 2-11, 2-12
See also BYTE data type; Locator structure; TEXT data type.
loc_t structure, with fetch array 15-39
loc_t.lc_union structure. See individual field names under Locator structure.
loc_t.loc_loctype field
assigning values to 8-10
definition of 8-8, 8-10
LOCFILE value 8-10, 8-21
LOCFNAME value 8-10, 8-26
LOCMEMORY value 8-10, 8-11, 16-55
LOCUSER value 8-10, 8-31
loc_t.loc_oflags field
file-open mode flags 8-20
setting for memory 8-12
setting for named file 8-26
setting for open file 8-21
setting for optical disc 8-40
using LOC_APPEND mask 8-20
using LOC_RONLY mask 8-20, 8-34
using LOC_USEALL mask 8-30
using LOC_WONLY mask 8-20, 8-33
loc_t.loc_size field
definition of 8-9
determining transfer size 8-30
indicating simple large-object size 8-13, 8-14
inserting a simple large object 8-25, 8-34
LOC_USEALL locator mask 8-30
LOC_WONLY locator mask 8-20, 8-33
log preprocessor option 1-65
-log preprocessor option 1-53, 1-58
login.h header file 1-25, 1-105, 12-14
long int data type
converting from decimal 4-50
converting from int8 5-29
converting to decimal 4-23
converting to int8 5-20
converting to text 5-44
corresponding SQL data type 2-12, 5-4
data conversion 2-20
defined constant 2-10
See also INTEGER data type; int data type.
longjmp() system call 12-36, 12-64
LO-pointer structure
creating 7-16
description of 7-18
ESQL/C functions for 7-19
in INSERT 7-17
in UPDATE 7-17
obtaining a valid 7-30
LO-specification structure
allocating 7-7, 7-49
allocation extent size 7-66, 7-75
create-time flags 7-10, 7-67, 7-77
deallocating 7-16, 7-63
description of 7-8
disk-storage information 7-8
ESQL/C functions for 7-11
estimated size 7-64, 7-73
initializing 7-49
maximum size 7-69, 7-79
sbspace name 7-71, 7-80
setting 7-39, 7-84
storage characteristics 7-12
LO-status structure
allocating 7-30
deallocating 7-32, 7-87
description of 7-30
LO_APPEND access-mode constant 7-24, 7-25
LO_APPEND file-location constant 7-44
LO_BUFFER access-mode flag 7-25
LO_CLIENT_FILE file-location constant 7-41, 7-44
LO_KEEP_LASTACCESS_TIME create-time constant 7-10, 7-31
LO_LOG create-time constant 7-10
LO_NOBUFFER access-mode flag 7-25
LO_NOKEEP_LASTACCESS_TIME create-time constant 7-10
LO_NOLOG create-time constant 7-10
LO_RDONLY access-mode constant 7-24, 7-25
LO_RDWR access-mode constant 7-24, 7-25
LO_SEEK_CUR whence constant 7-58, 7-62, 7-99
LO_SEEK_END whence constant 7-58, 7-62, 7-99
LO_SEEK_SET whence constant 7-58, 7-62, 7-99
LO_SERVER_FILE file-location constant 7-41, 7-44
LO_WRONLY access-mode constant 7-24, 7-25
LVARCHAR data type
corresponding ESQL/C data type 2-5, 2-12
defined constant 2-9
distinct-bit constant 15-32
distinct-bit macro 15-32
See also lvarchar data type.
lvarchar data type
checking for null 10-14
corresponding SQL data type 2-5, 2-12, 2-13
CREATE OPAQUE TYPE statement 10-6
declaration 10-7
declaring 3-9
defined constant 2-11
definition of 3-4, 3-9
description of 3-9
fetching from column 3-17
fetching into 10-14
inserting from 3-18
inserting from, fixed size 10-12
inserting to column 3-17
of a fixed size 3-10
of fixed size 10-9
opaque type name 10-11
pointer host variable 3-10, 10-9
allocating memory 10-10
and ifx_var() functions 10-11
functions for 10-32
ifx_var_alloc() function 10-33
ifx_var_dealloc() function 10-35
ifx_var_flag() function 10-37
ifx_var_getdata() function 10-39
ifx_var_getlen() function 10-40
ifx_var_isnull() function 10-41
ifx_var_setdata() function 10-42
ifx_var_setlen() function 10-44
ifx_var_setnull() function 10-46
inserting from 10-15
selecting into 10-16
using 10-14
selecting into, fixed size 10-14
setting to null 10-13
truncation, fixed size 3-10
using 10-11
with ANSI-compliant database 3-18
with DESCRIBE statement 16-7
See also LVARCHAR data type.
-lw preprocessor option 1-58

M

Machine notes Intro-14
Macro
for datetime and interval data types 6-31
for distinct bit 15-32
for library versions 13-14
for thread-safe status variables 13-27
for var binary data type 10-32
for varchar data type 3-7
See also Function library.
Main variable 1-42
Major features Intro-5
malloc() system call 8-14, 17-10, 17-11, 17-25
MAXVCLEN varchar constant 3-7
-mc processor option 1-80
Memory allocation, LO handle 7-59
Memory management
ESQL/C functions 17-12
for sqlda structure 17-6
for system-descriptor area 16-5, 16-7
freeing resources 14-13, 16-12, 17-15
Message chaining 12-43
Message file, error messages Intro-13
Message request
definition of 12-34
interrupting 12-34
optimizing for cursor 14-22, 14-24, 14-30, 14-36
representing 12-90
with callback function 12-39
Message transfers, optimized 12-42
Microsoft compiler, invoking 1-80
mi_lo_release() function 7-59
Module-definition file 1-80
MONEY data type
corresponding ESQL/C data type 2-4, 2-12
data conversion 2-20, 5-37, 5-41, 5-44
defined constant 2-8
role of decimal.h 1-22, 2-12
scale and precision 15-8
See also decimal data type.
-mserr preprocessor option 1-58, 1-75
Multibyte filter 1-6
MULTISET data type
accessing 9-4
after a DESCRIBE 17-8
corresponding ESQL/C data type 2-4, 2-12
declaring host variable for 9-6
defined constant 2-9
definition of 9-4
inserting many elements into 9-20
See also Collection data type (SQL).

N

-N processor option 1-55
NAME descriptor field 15-8, 16-6, 16-21
Named row type
after a DESCRIBE 17-8
declaring host variable for 9-53
in a collection-derived table 9-54
in typed table 9-72
inserting into 9-71
literal values 9-75
updating 9-71
See also Row type (SQL); Unnamed row type.
Named row variable 9-53
typed 9-53
untyped 9-53
NCHAR data type
corresponding ESQL/C data type 2-4, 2-12, 3-3
defined constant 2-8
fetching 3-12
transfering with host variables 3-11
Network parameter
ASKPASSATCONNECT 1-108, 12-14, 12-15
HOST 1-107, 12-14
INFORMIXSERVER 1-105, 12-14
OPTIONS 1-108
PASSWORD 1-107, 12-14
precedence 1-112
PROTOCOL 1-108, 12-15
SERVICE 1-108, 12-15
setting with InetLogin 1-111
USER 1-107, 12-14
-nln preprocessor option 1-53, 1-58, 1-65
Noncursor function
definition of 14-48
known at compile time 14-49
not known at compile time 16-23, 17-28
parameterized 14-52
with sqlda structure 17-28
with system-descriptor area 16-23
Non-default compilation of ESQL/C programs
options for 1-68
Non-default order of compilation
for all ESQL/C files 1-68
Non-parameterized non-SELECT statements 14-40
Non-parameterized SELECT statements 14-43, 15-24, 16-13, 17-17
Non-SELECT statements
definition of 14-40
known at compile time 14-40, 14-41
nonparameterized 14-40
not known at compile time 15-26
parameterized 14-52, 15-26, 16-46, 17-43
preparing 14-41
with sqlda structure 17-43
with system-descriptor area 16-46
NOT FOUND condition
definition of 11-5
using SQLCODE 11-35
using SQLSTATE 11-20
using the WHENEVER statement 11-45
-nowarn preprocessor option 1-53, 1-58, 1-66, 1-75
-np preprocessor option 1-50
Null value
determining in dynamic SQL 15-8, 17-30
for simple large-object values 8-18, 8-25, 8-30
for simple-large-object values 8-9
ifx_var_isnull() 10-41
ifx_var_setnull() 10-29, 10-46
in aggregate function 11-15, 11-31
in host variables 1-35
inserting code for check for 1-63
inserting into table 1-43
returned in indicator 1-43
risnull() 1-36, 2-24
rsetnull() 1-36, 2-27
setting to 1-36, 2-27, 10-13, 10-22, 10-29, 10-46
testing for 1-36, 1-42, 2-24, 10-14, 10-23, 10-31, 10-41
See also Indicator variable.
NULLABLE descriptor field 15-8, 16-6, 16-21
NUMERIC data type. See DECIMAL data type.
Numeric expressions
example formats 5-31
formatting 5-30
rfmtdec() function 5-37
rfmtdouble() function 5-41
rfmtlong() function 5-44
valid characters 5-30
-nup preprocessor option 1-50
NVARCHAR data type
corresponding ESQL/C data type 2-4, 2-12, 3-3, 3-4, 3-5
data conversion 3-12
defined constant 2-8
fetching 3-15
transfering with host variables 3-11

O

.o file extension 1-76, 1-87
-o preprocessor option 1-50, 1-55, 1-76, 1-77, 1-80, 1-85
.obj file extension 1-80, 1-81
On-line manuals Intro-13
onlycp preprocessor option 1-50
onspaces database utility 7-13
Opaque data type
after a DESCRIBE 17-8
as element type of collection 9-6
as field type of row 9-50
corresponding ESQL/C data type 2-5, 2-13
defined constant 2-9
definition of 10-3
dynamically executing 15-28
extended identifier 15-9, 15-13
in dynamic SQL 15-13
inserting 15-29
name of 15-9, 15-14
owner of 15-9, 15-14
predefined 10-48
truncation of data 15-31
See also Fixed-length opaque data type; Varying-length opaque data type.
OPEN statement
and deferred PREPARE 14-34
executing a cursor 14-15, 14-18
executing with PREPARE 14-30
interrupting 12-34
optimizing 14-35
role in dynamic SQL 14-10
USING DESCRIPTOR clause 17-4, 17-14, 17-34, 17-42
USING host_var clause 14-54
USING SQL DESCRIPTOR clause 16-4, 16-11, 16-37, 16-44
with a SELECT statement 14-15
with an EXECUTE FUNCTION statement 14-15, 16-28, 17-28
with an INSERT statement 14-18
with deferred PREPARE 14-30
with OPTOFC and Deferred PREPARE features 14-38
open() system call 8-19
OPEN, FETCH, and CLOSE (OPTOFC) feature
restrictions 14-36
Optimized Message Transfers 12-42
Optimized message transfers
enabling 12-43
error handling 12-45
reasons to disable 12-44
restrictions on 12-42
Optimizing
OPEN, FETCH, and CLOSE statements 14-35
OPTIONS network parameter 1-108
OPTMSG environment variable 12-43
setting 12-43
OptMsg global variable 12-43
setting 12-44
OPTOFC environment variable 14-37
client only 14-37
OPTOFC feature
and static cursors 14-36
enabling 14-37
with AUTOFREE and Deferred PREPARE features 14-39
with Deferred PREPARE feature 14-38

P

-p preprocessor option 1-55
PARAMETER keyword 1-40, 14-19, 16-62
Parameterized non-SELECT statements 14-52, 15-26, 16-46, 17-43
Parameterized SELECT statements 14-54, 15-26, 16-36, 16-43, 17-32, 17-41
Parenthesis symbol 5-31
PASSWORD network parameter 1-107, 12-14
PATH environment variable 1-97, B-2
required 1-10
Period (.) symbol 5-30, 9-74
-Pi processor option 1-93
Platform icons Intro-9
Plus (+) sign 5-30
Pointer, as host variable 1-39
Pound (#) sign 5-30
PRECISION descriptor field 15-8, 16-6
PREPARE statement
and sqlca.sqlerrd[0] 11-29, 14-9
and sqlca.sqlerrd[3] 11-30, 14-9
and sqlca.sqlerrd[4] 11-30, 11-39, 14-9
deferring execution of 14-30
exceptions returned 14-9
for collection variables 14-8
in thread-safe application 13-22
role in dynamic SQL 14-5
SQLCODE value 11-39, 14-9
with DATABASE statement 12-19
with EXECUTE 14-41
with EXECUTE FUNCTION 16-22, 16-26, 17-26
with EXECUTE PROCEDURE 14-47
with EXECUTE...INTO 14-43, 14-49
with INSERT 16-29
with OPTOFC and Deferred PREPARE features 14-38
with SELECT 16-13
Preprocessor
case sensitivity 1-18
conditional compilation 1-16, 8-48
definitions 1-14, 1-61
directives. See Preprocessor directive.
generating thread-safe code 13-17
header files 1-26
include files 1-13
line numbers 1-65
options. See Preprocessor option.
redirecting errors 1-65
search path for included files 1-64
stage 1 1-13, 1-62
stage 2 1-16, 1-67
syntax 1-48
version information 1-55, 1-58
Preprocessor directive
define 1-14, 1-61
definition of 1-12
elif 1-16
else 1-16
endif 1-16
ifdef 1-16
ifndef 1-16
include 1-13, 1-26
undef 1-14, 1-61
Preprocessor option
-ansi 1-52, 1-57, 12-18
ccargs 1-50, 1-77
-cp 1-49
-e 1-49, 1-55, 1-59
-ED 1-52, 1-57, 1-61
-EU 1-52, 1-57, 1-61
-G 1-52, 1-57, 1-65
-g 1-52, 1-57, 1-65
-I 1-53, 1-57, 1-63
-icheck 1-52, 1-57, 1-63
-l 1-76
-l for dynamic thread library 13-51
-libs 1-50
-local 1-53, 1-57, 1-65, 14-6
-log 1-53, 1-58, 1-65
-lw 1-58
-mserr 1-58, 1-75
-nln 1-53, 1-58, 1-65
-nowarn 1-53, 1-58, 1-66, 1-75
-np 1-50
-nup 1-50
-o 1-50, 1-55, 1-76, 1-77, 1-80, 1-85
onlycp 1-50
-p 1-55
-static 1-50, 1-77, 13-6, 13-7, 13-28
those affecting linking 1-87
those affecting preprocessing 1-59
those for Informix libraries 13-6
-thread 1-50, 1-58, 1-60, 1-77, 13-6, 13-17, 13-27
-ts 1-58
-V 1-50, 1-59
-xopen 1-58, 1-66, 15-20, 15-22
Preprocessor, ESQL
stage 1 1-9
Preprocessor, ESQL/C
stage 2 1-9
Printed manuals Intro-13
Process
child 12-33, 12-57
parent 11-33, 12-33, 12-57
Processor
associating options with files 1-59
creating a response file 1-83
naming executable file 1-80
syntax 1-78, 1-79, 1-91
using a project file 1-82
Windows options 1-92
Processor option
-c 1-81
-cc 1-79, 1-81
-cpu 1-92
-f 1-55, 1-82
-l 1-80, 1-88
-libs 1-55, 1-87
-N 1-55
-Pi 1-93
placement of 1-59
-r 1-80, 1-89
-rt 1-93
-runtime 1-85, 1-93
-Sc 1-86, 1-94
-ss 1-86, 1-93, 1-94
-subsystem 1-86, 1-94
-Sw 1-86, 1-94
-target 1-84, 1-94, 1-97
-V 1-55
-wd 1-84, 1-94, 1-97
-we 1-84, 1-94
Windows options 1-91
Program
checking library version 13-14
commenting 1-21
compiling 1-11, 1-81, 13-12
including files 1-13, 1-26
linking 1-11, 1-87, 13-7, 13-9, 13-12, 13-26
message request 12-34, 12-39, 12-90, 14-22, 14-24, 14-30, 14-36
naming the executable file 1-55, 1-77, 1-80
preprocessing 1-12, 1-59
running 1-11
suppressing compilation 1-59
suppressing linking 1-81
See also Sample program.
Project file 1-55, 1-82
PROTOCOL network parameter 1-108, 12-15
pthread.h DCE header file 13-25
pthread_lock_global_np() DCE function 13-25
pthread_yield() DCE function 13-26
PUT statement
inserting a row 14-18
inserting into a collection variable 9-22
USING DESCRIPTOR clause 17-4, 17-14, 17-31
USING SQL DESCRIPTOR clause 16-5, 16-11, 16-35
putenv() system call 12-43, 14-37

Q

Question mark (?) 14-51
wildcard in smart large-object filenames 7-42
Quotation marks
escaping 1-19, 9-43, 9-76
See also Single quotes; Double quotes.

R

-r processor option 1-80, 1-89
.rc file extension 1-80, 1-87, 1-89
rdatestr() library function 6-6
rdayofweek() library function 6-8
rdefmtdate() library function 6-10, 6-37
rdownshift() library function 3-32
REAL data type. See SMALLFLOAT data type.
Reference count 7-31, 7-89
regcopy utility 1-6
Registering dynamic thread functions 13-49
Registry
connection information in 12-8
InformixServer 12-95
in-memory copy 1-112
precedence 1-112
Release notes Intro-14
ReleaseConnect() library function 12-93, 12-98
.res file extension 1-80, 1-87, 1-89
Resource compiler
default options 1-84
passing arguments to 1-80, 1-89
specifying compiled resource file 1-80
specifying file to compile 1-80
Resource file 1-80, 1-87
Response file 1-56, 1-83
Restrictions
on optimized message transfers 12-42
on OPTOFC feature 14-36
Retrieving an error message 11-48
rfmtdate() library function 6-14, 6-37, 16-62
rfmtdec() library function 5-37, 16-62
rfmtdouble() library function 5-41
rfmtlong() library function 5-44
rgetlmsg() library function 11-48
rgetmsg() library function 11-51
risnull() library function 1-43, 2-24
rjulmdy() library function 6-17
rleapyear() library function 6-19
rmdyjul() library function 6-21
ROLLBACK WORK statement 12-30, 15-18
Row constructor 9-70
row data type (ESQL/C)
accessing a typed table 9-72
allocating memory for 9-57
client-side 9-56
Collection Derived Table clause 9-59
corresponding SQL data type 2-5, 2-13
deallocating memory for 9-57
declaration 9-49
defined constant 2-11
deleting from 9-68
fetching from 9-64
fetching into 9-62
field names 9-68
field values 9-69
initializing 9-62
inserting into 9-64
literal values 9-69
named row variable 9-53
nested rows 9-66
operating on 9-58
typed row variable 9-50
untyped row variable 9-52
updating 9-66
See also Row type (SQL).
Row data type(ESQL/C)
with a collection 9-26
Row type (SQL)
accessing 9-48
as element type of collection 9-6
as field type of row 9-50
constructed rows 9-70
corresponding ESQL/C data type 2-5, 2-13
declaring host variables for 9-49
defined constant 2-9
definition of 9-48
deleting 9-68, 9-76
dot notation 9-66, 9-74
extended identifier 15-9, 15-13
fetching 9-62, 9-64
in dynamic SQL 15-13
inserting into 9-64, 9-71, 9-74
literal values 9-43, 9-69, 9-74, 9-75
nested 9-70
owner of 15-9, 15-14
selecting from 9-73
typed table 9-72
updating 9-66, 9-71, 9-74
See also row data type (ESQL/C).
rsetnull() library function 2-14, 2-27
rstod() library function 3-34
rstoi() library function 3-36
rstol() library function 3-38
rstrdate() library function 6-23
-rt processor option 1-93
rtoday() library function 6-26
rtypalign() library function 2-30, 17-12, 17-23
rtypmsize() library function 2-33, 17-12, 17-23
rtypname() library function 2-36
rtypwidth() library function 2-39
Running C preprocessor first
options for 1-68
Runtime environment 1-98
Runtime errors
definition of 11-5
in user-defined routines 11-18, 11-25
Informix-specific messages 11-25
using rgetlmsg() 11-48
using rgetmsg() 11-51
using sqlca structure 11-38
using SQLSTATE variable 11-24
using the WHENEVER statement 11-45
See also Error handling; Warnings.
-runtime processor option 1-85, 1-93
Runtime routines, exporting 1-90
rupshift() library function 3-40

S

Sample program
bycmpr 3-22
bycopy 3-24
byfill 3-27
byleng 3-29
create_clob 7-100
decadd 4-9
deccmp 4-11
deccopy 4-14
deccvasc 4-6, 4-17
deccvdbl 4-19
deccvint 4-21
deccvlong 4-23
decdiv 4-26
dececvt 4-29
decfcvt 4-33
decmul 4-35
decround 4-38
decsub 4-40
dectoasc 4-43
dectodbl 4-45
dectoint 4-48
dectolong 4-50
dectrunc 4-53
demo1 1-117
demo2 14-54
demo3 16-15, 16-37, 17-18
demo4 14-54, 16-15, 17-34
dispcat_pic 8-44, 11-59
dtaddinv 6-41
dtcurrent 6-43
dtcvasc 6-46
dtcvfmtasc 6-49
dtextend 6-52
dtsub 6-55
dtsubinv 6-58
dttoasc 6-60
dttofmtasc 6-63
dyn_sql 11-59
ESQLAUTH 12-16
getcd_me 8-15
getcd_nf 8-27
getcd_of 8-22
ILOGIN 1-112
incvasc 6-66
incvfmtasc 6-69
intoasc 6-73
intofmtasc 6-75
invdivdbl 6-78
invdivinv 6-81
invextend 6-83
invmuldbl 6-86
ldchar 3-31
rdatestr 6-7
rdayofweek 6-8
rdefmtdate 6-12
rdownshift 3-33
rfmtdate 6-15
rfmtdec 5-38
rfmtdouble 5-42
rfmtlong 5-45
rgetlmsg 11-49
rgetmsg 11-52
risnull 2-25
rjulmdy 6-17
rleapyear 6-19
rmdyjul 6-22
rsetnull 2-27
rstod 3-34
rstoi 3-36
rstol 3-38
rstrdate 6-24
rtoday 6-26
rtypalign 2-31
rtypmsize 2-34
rtypname 2-36
rtypwidth 2-40
rupshift 3-41
sqgetdbs 12-50
sqldetach 12-58, 12-59
stcat 3-43
stchar 3-45
stcmpr 3-47
stcopy 3-48
stleng 3-51
timeout 12-70
updcd_me 8-17
updcd_nf 8-28
updcd_of 8-23
varchar 3-7
WDEMO 1-97
See also Program.
Sbspace
definition of 7-9
getting name of 7-71
on optical disc 7-32
running out of space 7-96, 7-99
setting 7-80
storage characteristics for 7-13
SBSPACENAME configuration parameter 7-13
-Sc processor option 1-86, 1-94
SCALE descriptor field 15-8, 16-6
Scope of
cursor names 1-65, 13-24
host variables 1-29
preprocessor definitions 1-14
statement identifiers 1-65, 13-22
Scroll cursor 14-15
Select cursor
definition of 14-16
fetch buffer 14-20
for collection variable 9-27
statements that manage 14-15
using 14-45
SELECT statement
and NOT FOUND condition 11-20, 11-35
associated with a cursor 14-14, 16-4, 17-4
checking for truncation 11-31
Collection Derived Table clause 9-24, 9-64
defined statement constant 15-17
determining estimated cost of 11-30
determining rowid 11-30, 11-35
executing a singleton SELECT 14-43
failing to access rows 11-29
fetching CHAR data 3-11, 3-18
fetching collection data 9-16, 9-24, 9-37, 9-41
fetching DATETIME data 6-33
fetching INTERVAL data 6-34
fetching opaque-type data 10-14, 10-23, 10-30
fetching row-type data 9-62, 9-64, 9-73
fetching smart large-object data 7-22
fetching VARCHAR data 3-13
identifying variable mismatch 11-15, 11-23, 11-31
in ANSI-compliant database 3-18
interrupting 12-34, 12-52
INTO host_var clause 11-31, 14-6
INTO TEMP clause 11-21, 11-36
known at compile time 14-43
nonparameterized 14-43, 15-24, 16-13, 17-17
not known at compile time 15-24, 15-26
parameterized 14-52, 14-54, 15-26, 16-36, 16-43, 17-32, 17-41
singleton 14-10, 14-16, 14-43, 16-4, 16-12, 17-4
with aggregate functions 11-31
with DESCRIBE 15-16, 16-6, 17-7, 17-8
with sqlda structure 17-17, 17-32
with system-descriptor area 16-13, 16-36, 16-43, 17-41
See also Cursor (database); Fetching.
Sequential cursor 9-21, 9-27, 14-15, 14-18
SERIAL data type
corresponding ESQL/C data type 2-4, 2-12, 5-4
data conversion 2-19
defined constant 2-8
obtaining value after INSERT 11-29
using typedefs 1-38
See also int data type.
SERIAL8 data type
corresponding ESQL/C data type 2-5, 2-13, 5-4
declaring host variable for 5-7
defined constant 2-9
ifx_getserial8() 5-10
See also int8 data type.
SERVICE network parameter 1-108, 12-15
SET AUTOFREE statement 14-25, 14-26
SET AUTOFREE (SQL) statement 14-25
setting 14-26
SET CONNECTION statement 12-93, 12-100
and explicit connections 12-18
determining database server features 12-27
making connection dormant 13-18, 13-21, 13-23
managing connections across threads 13-20
switching to a dormant connection 12-29, 13-18
with an active transaction 12-30
SET data type
accessing 9-4
after a DESCRIBE 17-8
corresponding ESQL/C data type 2-5, 2-13
declaring host variable for 9-6
defined constant 2-9
definition of 9-4
inserting many elements into 9-20
See also Collection data type (SQL).
SET DEFERRED PREPARE statement 14-32
SET DESCRIPTOR statement
setting COUNT field 16-9, 16-36
setting fields 16-4, 16-9, 16-36
VALUE keyword 16-36
See also System-descriptor area.
SetConnect() library function 12-93, 12-100
setjmp() system call 12-36
Setnet32 utility
description 1-6
determining default database server 12-95
use of ixreg.dll 1-89
Shared library
creating for dynamic thread functions 13-50
short int data type
corresponding SQL data type 2-12, 5-4
data conversion 2-20
defined constant 2-10
See also SMALLINT data type; int data type.
Signal handling
of ESQL/C library 12-66
of SIGINT 12-35
Signal-handler function 12-35, 12-36
Signals
SIGCHLD 12-67
SIGINT 12-35
signal() system call 12-36
Simple large objects, and a fetch array 15-34
Simple-large-object data type
compared with smart large objects 8-4
declaring host variable for 8-5
definition of 8-3
format on disk 8-40
inserting 8-17, 8-23, 8-28, 8-34, 16-33
locating
See Locating a simple large object.
null values 8-9
on optical disc 8-40
programming with 8-5
selecting 8-15, 8-22, 8-27, 8-33, 16-63
subscripting 8-6
See also BYTE data type; TEXT data type.
Simple-large-object descriptor 8-40
Single quotes (' ')
delimiting strings 1-32
escaping 1-19
in a literal collection 9-43
in a literal row 9-76
in a prepared statement string 14-5
in a quoted string 1-20
.sl file extension 13-13
SMALLFLOAT data type
corresponding ESQL/C data type 2-4, 2-12, 5-5
data conversion 2-19, 2-20, 2-21
defined constant 2-8
number of decimal digits 2-18, 5-6
See also float data type.
SMALLINT data type
corresponding ESQL/C data type 2-4, 2-12, 5-4
creating a typedef for 1-38
data conversion 2-19, 2-20, 2-21
defined constant 2-8, 2-9, 15-21
See also short int data type.
Smart large object, permanent 7-59
Smart-large-object data type
access modes 7-23
accessing 7-22
advantages 8-4
allocation extent size 7-66, 7-75
altering 7-36
closing 7-29, 7-38
compared with simple large objects 8-4
copying from user-defined buffer 7-52
copying to a file 7-41
copying to a user-defined buffer 7-93
create-time flags 7-67, 7-77
creating 7-21, 7-46
declaring host variable for 7-7
definition of 7-5, 9-3
determining storage characteristics of 7-47
duration of open 7-27
ESQL/C functions for 7-33
estimated size 7-9, 7-64, 7-73
file position 7-61, 7-92
format on disk 7-32
getting size of 7-31, 7-91
hexadecimal identifier for 7-16, 7-42
ifx_lo_alter() 7-36
ifx_lo_close() 7-38
ifx_lo_col_info() 7-39
ifx_lo_copy_to_file() 7-41, 9-45
ifx_lo_copy_to_lo() 7-44
ifx_lo_create() 7-46
ifx_lo_def_create_spec() 7-49
ifx_lo_filename() 7-50
ifx_lo_from_buffer() 7-52
ifx_lo_open() 7-52, 7-53
ifx_lo_readwithseek() 7-57
ifx_lo_read() 7-55
ifx_lo_release() 7-59
ifx_lo_seek() 7-61
ifx_lo_specget_estbytes() 7-64
ifx_lo_specget_extsz() 7-66
ifx_lo_specget_flags() 7-67
ifx_lo_specget_maxbytes() 7-69
ifx_lo_specget_sbspace() 7-71
ifx_lo_specset_estbytes() 7-73
ifx_lo_specset_extsz() 7-75
ifx_lo_specset_maxbytes() 7-79
ifx_lo_specset_sbspace() 7-80
ifx_lo_spec_free() 7-63
ifx_lo_stat() 7-81
ifx_lo_stat_atime() 7-83
ifx_lo_stat_cspec() 7-84
ifx_lo_stat_ctime() 7-86
ifx_lo_stat_free() 7-87
ifx_lo_stat_mtime_sec() 7-88
ifx_lo_stat_refcnt() 7-89
ifx_lo_stat_size() 7-91
ifx_lo_tell() 7-92
ifx_lo_to_buffer() 7-93
ifx_lo_truncate() 7-95
ifx_lo_writewithseek() 7-98
ifx_lo_write() 7-96
inserting 7-17
lightweight I/O 7-25
LO file descriptor 7-20
locking 7-26, 7-38, 7-47, 7-53
locks 7-26
LO-pointer structure 7-18
LO-specification structure 7-8
LO-status structure 7-30
maximum size 7-9, 7-69, 7-79
modifying 7-28
obtaining status of 7-29, 7-81
on optical disc 7-32
opening 7-23, 7-47, 7-53
programming with 7-6
reading from 7-28, 7-55, 7-57
reference count 7-31, 7-89
sample program 7-100
sbspace 7-71, 7-80
selecting 7-22
storage characteristics 7-8, 7-12
storing 7-17
temporary smart large objects 7-59
temporary, releasing resources 7-59
time of last access 7-31, 7-83
time of last change in status 7-31, 7-86
time of last modification 7-31, 7-88
truncating 7-95
updating 7-17
writing to 7-29, 7-96, 7-98
See also BLOB data type; CLOB data type; ifx_lo_t data type.
.so file extension 13-8, 13-13
Software dependencies Intro-4
SOURCEID descriptor field 15-9, 15-32
SOURCETYPE descriptor field 15-9, 15-32
source.ec file, argument to preprocessor 1-50
source.ecp file, argument to the preprocessor 1-50
SPL function
cursor function 14-42
definition 14-47
executing dynamically 14-50, 16-23, 16-29, 17-28, 17-29
See also SPL routine; User-defined function.
SPL procedure 14-47
See also SPL routine; User-defined procedure.
SPL routine 12-34, 14-47
sqgetdbs() library function 12-49
SQL data types
BLOB 2-5, 2-11, 7-5
BOOLEAN 2-5, 2-13
BYTE 2-4, 2-11, 8-3
CHAR 2-4, 2-11, 3-3
CLOB 2-5, 2-13
collections 9-4
DATE 2-4, 2-11, 6-3
DATETIME 2-4, 2-11, 6-28
DECIMAL 2-4, 2-12, 4-3
defined constants for 2-8, 15-21
distinct 15-28
FLOAT 2-4, 2-12, 5-5
INT8 2-5, 2-13, 5-4, 5-5, 5-7
INTEGER 2-4, 2-12, 5-4
INTERVAL 2-4, 2-12, 6-28
LIST 2-5, 2-13, 9-4
LVARCHAR 2-5, 2-12
MONEY 2-4, 2-12
MULTISET 2-4, 2-12, 9-4
named row type 9-48
NCHAR 2-4, 2-12, 3-3
NVARCHAR 2-4, 2-12, 3-3, 3-4, 3-5
opaque 2-5, 2-13, 10-3
row types 2-5, 9-48
SERIAL 2-4, 2-12, 5-4
SERIAL8 2-5, 2-13, 5-4, 5-7
SET 2-5, 2-13, 9-4
SMALLFLOAT 2-4, 2-12, 5-5
SMALLINT 2-4, 2-12, 5-4
TEXT 2-4, 2-12, 8-3
unnamed row type 2-13, 9-48
VARCHAR 2-4, 2-12, 3-3
X/Open defined constants 2-9
See also individual data type names.
SQL identifier 1-32, 14-51
See also Delimited identifier.
SQL keyword protection
against interpretation by C preprocessor 1-73
relation to the dollar ($) sign 1-73
SQL statement
CLOSE DATABASE 12-99
CONNECT 12-12, 12-93
DATABASE 12-96
DISCONNECT 12-93, 12-98
SET CONNECTION 12-93, 12-100
SQL statements
case sensitivity 1-18
cursor-management statements 14-15, 14-18
defined constants for 11-33, 15-17
dynamic. See Dynamic SQL.
for dynamic SQL 14-11, 14-15, 14-18, 16-4, 17-4
interruptable 12-34
obtaining diagnostic information 11-4
parameterized 14-51
static 11-30, 14-3
sqlauth() authentication function 1-89, 1-108, 12-14
SQLBOOL data-type constant 2-9
See also BOOLEAN data type.
sqlbreakcallback() library function 12-32, 12-37, 12-54
sqlbreak() library function 12-34, 12-52, 12-70
SQLBYTES data-type constant 2-8
See also BYTE data type.
sqlca structure 1-116
and DESCRIBE 15-23
and PREPARE 14-9
checking for exceptions 11-27
definition of 11-28
determining database server features 11-30, 11-37, 12-28
in thread-safe code 13-17, 13-27
indicating truncation 1-44, 2-16
relation to SQLCODE status variable 11-32
retrieving error message text 11-47
sqlcode 11-29
See also SQLCODE variable.
sqlerrd array. See sqlca.sqlerrd array.
sqlerrm 11-29, 11-38, 11-49
sqlerrp 11-29
sqlwarn structure. See sqlca.sqlwarn structure.
using the WHENEVER statement 11-45
warning values 11-37
sqlca.h header file
constant definitions 11-36
definition of 1-23
structure definition 11-28, 13-28
variable definitions 11-12, 11-32, 13-28
sqlca.sqlcode value. See SQLCODE variable.
sqlca.sqlerrd array
definition of 11-29, 11-30
sqlerrd[0] 11-34, 14-9
sqlerrd[1] 11-29, 11-34, 11-38, 11-48, 11-51
sqlerrd[2] 11-35, 11-38
sqlerrd[3] 11-34, 14-9
sqlerrd[4] 11-38, 11-39, 14-9
sqlerrd[5] 11-35
sqlca.sqlwarn structure
definition of 11-30, 11-31, 11-37
sqlwarn0 11-30, 11-31
sqlwarn1 3-11, 3-17, 6-35, 11-30, 11-31, 12-28
sqlwarn2 11-30, 11-31, 12-28
sqlwarn3 11-31, 12-28
sqlwarn4 11-31, 12-28, 15-23
sqlwarn5 11-31
sqlwarn6 11-31, 12-28
sqlwarn7 11-30, 11-31, 12-28
SQLCHAR data-type constant 2-8
See also CHAR data type.
SQLCODE value 1-116, 12-96, 12-99, 12-101
SQLCODE variable
after a DESCRIBE statement 11-33, 15-17
after a GET DIAGNOSTICS statement 11-13
after a PREPARE statement 11-39
after a simple large-object access 8-9
after an ALLOCATE COLLECTION 9-12
after an ALLOCATE ROW 9-57
after an EXECUTE statement 11-40
and sqlerrd 11-29
definition of 11-32
in diagnostics area 11-10, 11-13
in thread-safe code 13-17, 13-27
indicating an interrupt 12-52
indicating runtime errors 11-38
relation to sqlca structure 11-32
result codes 11-29, 11-34
retrieving error message text 11-48, 11-51
See also ISAM error code; sqlca structure; SQLSTATE variable.
sqld field. See sqlda.sqld field.
sqlda
and a fetch array 15-35
sqlda structure
allocating memory for 13-17, 17-6, 17-10
assigning values to 17-13
data type lengths 3-7
declaring 17-5
definition of 15-10
desc_name field 15-15
desc_next field 15-15
desc_occ field 15-15
examples 17-18, 17-34
fetching rows into 17-14
fields of 15-10, 15-11, 15-12, 15-13
for columns of a SELECT 17-17
for columns of an INSERT 17-30
for distinct-type columns 15-32
for input parameters 17-32, 17-43
for opaque-type columns 15-29, 15-31
for return values of a user-defined function 17-26
freeing memory for 17-15
getting field values 17-13
initializing 17-7
interrupting database server 12-52
managing 17-4
obtaining values from 17-13
setting fields 17-13
specifying input parameter values for 17-14
sqld field. See sqlda.sqld field.
sqlvar structure. See sqlda.sqlvar structure.
uses of 17-16
using an indicator variable 15-13
sqldata field. See sqlda.sqlvar.sqldata field.
SQLDATE data-type constant 2-8
See also DATE data type.
sqlda.h header file 1-23, 1-26, 17-5
sqlda.sqld field
after a DESCRIBE 15-16, 17-7, 17-10, 17-21
definition of 15-10, 15-11
saving 17-17, 17-30
setting 17-32, 17-39
sqlda.sqlvar structure
after a DESCRIBE 17-7
definition of 15-12
getting field values 17-13
setting fields 17-13
sqldata field. See sqlda.sqlvar.sqldata field.
sqlflags field 15-14
sqlformat field 15-13
sqlidata field 15-13, 17-33
sqlilen field 15-13, 17-33
sqlind field 15-13, 15-31, 17-8, 17-10, 17-30, 17-33
sqlitype field 15-13, 17-33
sqllen field. See sqlda.sqlvar.sqllen field.
sqlname field 15-13, 17-8, 17-10, 17-21, 17-24
sqlownerlen field 15-14
sqlownername field 15-14
sqlsourceid field 15-14, 15-32
sqlsourcetype field 15-14, 15-32
sqltype field. See sqlda.sqlvar.sqltype field.
sqltypelen field 15-14
sqltypename field 15-14
sqlxid field 15-13
sqlda.sqlvar.sqldata field
after a DESCRIBE 17-8, 17-10
after a FETCH 17-14, 17-18, 17-24, 17-29, 17-38
allocating memory for 15-11, 17-10, 17-23
definition of 15-13
freeing memory for 17-16, 17-25
setting column value 17-30, 17-31
setting input parameter data 17-33, 17-40
sqlda.sqlvar.sqllen field
after a DESCRIBE 17-8, 17-10
definition of 15-13
determining host variable type 17-15, 17-24
for varchar data 3-7
inserting opaque-type data 15-29
setting input parameter length 17-33, 17-40
used to allocate memory 17-12, 17-17, 17-23, 17-27
sqlda.sqlvar.sqltype field
after a DESCRIBE 17-8, 17-10
column type values 15-20, 15-32, 17-13
definition of 15-13
determining host variable type 17-15, 17-24
indicating distinct-type data 15-32
inserting opaque-type data 15-29
setting input parameter type 17-32, 17-40
used to allocate memory 17-12, 17-17, 17-23, 17-27
SQLDBOOLEAN distinct-bit constant 15-32, 15-34
SQLDECIMAL data-type constant 2-8
See also DECIMAL data type.
sqldetach() library function 12-33, 12-41, 12-57, 13-25
SQLDISTINCT distinct-bit constant 15-32, 15-34
SQLDLVARCHAR distinct-bit constant 15-32, 15-34
sqldone() library function 12-33, 12-64, 12-70
SQLDTIME data-type constant 2-8
See also DATETIME data type.
sqlerrd array. See sqlca.sqlerrd array.
sqlexit() library function 12-41, 12-65
SQLFLOAT data-type constant 2-8
See also FLOAT data type.
sqlhdr.h file
and FetBufSize global variable 14-23
FetBufSize variable 14-23
sqlhdr.h header file 1-23, 1-26
determining product version 13-14
var binary macros 10-32
sqlhdr.h, and OptMsg global variable 12-44
sqlhosts file 12-7, B-2
sqliapi.h header file, definition of 1-23
SQLINT data-type constant 2-8
See also INTEGER data type.
SQLINT8 data-type constant 2-9
See also INT8 data type.
SQLINTERVAL data-type constant 2-8
See also INTERVAL data type.
SQLKEYWORD_ prefix 1-73
sqllen field. See sqlda.sqlvar.sqllen field.
SQLLIST data-type constant 2-9
See also LIST data type.
SQLLVARCHAR data-type constant 2-9
See also LVARCHAR data type.
SQLMONEY data-type constant 2-8
See also MONEY data type.
SQLMULTISET data-type constant 2-9
See also MULTISET data type.
SQLNCHAR data-type constant 2-8
See also NCHAR data type.
SQLNOTFOUND constant
definition of 11-36
detecting NOT FOUND condition 11-45
See also NOT FOUND condition.
SQLNULL constant. See Null value.
SQLNVCHAR data-type constant 2-8
See also NVARCHAR data type.
sqlproto.h header file 1-23, 1-25
SQLROW data-type constant 2-9
See also Row type (SQL).
SQLSERIAL data-type constant 2-8
See also SERIAL data type.
SQLSERIAL8 data-type constant 2-9
See also SERIAL8 data type.
SQLSET data-type constant 2-9
See also SET data type.
sqlsignal() library function 12-66
SQLSMFLOAT data-type constant 2-8
See also SMALLFLOAT data type.
SQLSMINT data-type constant 2-8
See also SMALLINT data type.
sqlstart() library function 12-20, 12-65, 12-68
SQLSTATE value 1-116, 12-96, 12-99, 12-101
SQLSTATE variable
after a GET DIAGNOSTICS statement 11-13
class and subclass codes 11-10, 11-14, 11-15
determining database server features 11-22, 12-28
determining number of exceptions 11-8
determining origin of class portion 11-10, 11-22, 11-24, 11-25
determining origin of subclass portion 11-10, 11-22, 11-24, 11-25
in diagnostics area 11-10
in thread-safe code 13-17, 13-27
indicating truncation 3-11, 3-17
result codes 11-19
using 11-12
using the WHENEVER statement 11-45
warning values 11-22
See also SQLCODE variable.
sqlstype.h header file
definition of 1-23
statement-type constants 11-33, 15-17
SQLTEXT data-type constant 2-8
See also TEXT data type.
sqltype field. See sqlda.sqlvar.sqltype field.
sqltypes.h header file
data-type constants 2-7, 15-20, 16-9
definition of 1-23
distinct-bit constants 15-32
distinct-bit macros 15-32
simple-large-object data types 8-6, 8-9
source type for distinct columns 15-9, 15-14
SQLUDTFIXED data-type constant 2-9, 15-34
See also Fixed-length opaque data type.
SQLUDTVAR data-type constant 2-9, 15-34
See also Varying-length opaque data type.
sqlvar structure. See sqlda.sqlvar structure.
sqlvar_struct structure
with fetch array 15-38
sqlvar_struct typedef. See sqlda.sqlvar structure.
SQLVCHAR data-type constant 2-8
See also VARCHAR data type.
sqlxtype.h header file
definition of 1-23
X/Open data types 1-66, 2-9, 15-21
-ss processor option 1-86, 1-93, 1-94
Standards. See ANSI SQL standards; X/Open standards.
START DATABASE statement 12-18, 12-20
Statement identifier
case sensitivity 1-18
creating 14-5
freeing 14-13
scope rules 1-65, 13-22
structure 14-5
using delimited identifiers 1-33
Static cursor
with OPTOFC feature 14-36
static preprocessor option 1-77, 13-6, 13-7, 13-28
-static preprocessor option 1-50
Static-link library 1-95, 1-96
stcat() library function 3-42, 14-7
stchar() library function 3-44
stcmpr() library function 3-46
stcopy() library function 3-48, 14-7
stleng() library function 3-50
Storage characteristics
altering 7-36
column-level 7-14, 7-39
create-time flags 7-10
disk-storage information 7-8
inheritance hierarchy 7-13
obtaining 7-12, 7-31, 7-84
sbspace-level 7-13
system default 7-13
system-level 7-49
system-specified 7-13
user-defined 7-15
Stored procedure 14-47
See also EXECUTE PROCEDURE statement.
stores7 database
creating and populating B-3
string data type
corresponding SQL data type 2-4, 2-12
defined constant 2-10
definition of 3-4, 3-5
fetching into 2-18, 3-11, 3-13, 3-17, 5-6, 6-35
inserting from 3-12, 3-14, 3-17, 3-18
with ANSI-compliant database 3-18
with empty string 3-6
See also CHAR data type.
strncmp() system call 11-20, 11-24
struct data type. See Structure.
Structure
as host variable 1-37
decimal 4-4
dtime 6-29
for dynamic management 15-4
ifx_int8_t 5-7
ifx_lo_create_spec_t 7-8
ifx_lo_stat_t 7-30
ifx_lo_t 7-18
intrvl 6-30
locator. See Locator structure.
nesting 1-37
sqlca 11-27
sqlda 15-10
sqlvar_struct 15-12
Subclass value. See SQLSTATE variable, class and subclass codes.
-subsystem processor option 1-86, 1-94
-Sw processor option 1-86, 1-94
System call
calloc() 17-10
DCE restrictions 13-25
exec() 12-58, 13-25
exit() 11-33, 11-44
fclose() 1-64
fopen() 1-64
fork() 8-62, 12-57, 13-25
fread() 1-64
free() 8-14, 17-25
longjmp() 12-36, 12-64
malloc() 8-14, 17-10, 17-11, 17-25
open() 8-19
setjmp() 12-36
signal() 12-36
strncmp() 11-20, 11-24
vfork() 12-58
wait() 8-63
System-descriptor area
allocating memory for 16-5
assigning values to 16-8
COUNT field. See COUNT descriptor field.
data type lengths 3-7
definition of 15-5, 16-3
examples 16-15, 16-24, 16-30, 16-37
fetching rows into 16-11
fields of 15-5, 15-7
for columns of a SELECT 16-13, 16-29
for columns of an INSERT 16-29
for distinct-type columns 15-32
for input parameters 16-36, 16-43, 16-46, 17-41
for opaque-type columns 15-29, 15-31
for return values of a user-defined function 16-22
freeing memory for 16-12
getting field values 16-10
initializing 16-6
interrupting database server 12-52
item descriptor fields 15-7
managing 16-4
obtaining values from 16-8
setting fields 16-9
specifying input parameter values for 16-10
uses for 16-13
using an indicator variable 15-8, 16-30, 16-36

T

Tabs 1-75
-target processor option 1-84, 1-94, 1-97, 12-16
TEXT data type
corresponding ESQL/C data type 2-4, 2-12
declaring host variable for 8-5
defined constant 2-8
inserting 8-17, 8-23, 8-28, 8-34, 16-33
locator structure shown 8-7
on optical disc 8-40
role of locator.h 1-23, 2-12
selecting 8-15, 8-22, 8-27, 8-33, 16-34
subscripting 8-6
See also loc_t data type; Simple large-object data type.
-thread preprocessor option 1-50, 1-58, 1-60, 1-77, 13-6, 13-17, 13-27
for dynamic thread library 13-51
THREADLIB environment variable 13-26, 13-27
Thread-safe application
concurrent connections 13-18
connections across threads 13-20
creating 13-16
cursors across threads 13-24
DCE restrictions 13-25
decimal values 13-25, 13-30
DISCONNECT ALL statement 13-22
environment variables 13-25
linking 13-26
preparing statements 13-22
programming hints 13-17
resource allocation 13-26
sample 13-33
SET CONNECTION statement 13-18, 13-20
thread-safe code 13-17
thread-safe DLLs for Windows 1-60
Time-out interval 12-37, 12-54, 12-70
timeout sample program 12-70
Trailing blanks
in VARCHAR conversion 3-13, 3-15
inserting into database 3-14
removing 3-30
with ESQL/C data types 3-5
Transaction
committing 12-30
determining if used 11-15, 11-22, 11-30, 12-27
exiting all connections 12-65
interrupting the database server 12-52
rolling back 12-30
switching server connections 12-30
Truncated value
in CHAR conversion 3-11, 3-17
in decimal conversion 4-52
in VARCHAR conversion 3-13, 3-15
indicated by sqlca 11-31
indicated by SQLSTATE 11-15
of opaque data type 15-31
using indicator variable 1-42, 1-44
with pointers 1-39
-ts preprocessor option 1-58
TU_DAY qualifier macro 6-31
TU_DTENCODE qualifier macro 6-32, 6-42
TU_ENCODE qualifier macro 6-32
TU_END qualifier macro 6-32
TU_FLEN qualifier macro 6-32
TU_Fn qualifier macro 6-32
TU_FRAC qualifier macro 6-32
TU_HOUR qualifier macro 6-31
TU_IENCODE qualifier macro 6-32
TU_LEN qualifier macro 6-32
TU_MINUTE qualifier macro 6-31
TU_MONTH qualifier macro 6-31
TU_SECOND qualifier macro 6-32
TU_START qualifier macro 6-32
TU_YEAR qualifier macro 6-31
TYPE descriptor field
after a DESCRIBE 16-6, 16-21
column type values 15-20, 16-9
definition of 15-7
indicating distinct-type data 15-32
inserting opaque-type data 15-29
setting column type 15-32, 16-33
setting input parameter type 16-36, 16-41
Typed collection variable
allocating memory for 9-11
deallocating memory for 9-11
declaring 9-6
operating on 9-13
Typed row variable
allocating memory for 9-57
deallocating memory for 9-57
declaring 9-50
operating on 9-58
typedef
as host variable 1-38
dec_t 4-4
dtime_t 6-29, 6-33
intrvl_t 6-30, 6-34

U

UDR. See User-defined routine.
undef preprocessor directive 1-12, 1-14, 1-61
Union of structures 1-38, 8-8
Unnamed row type
after a DESCRIBE 17-8
inserting into 9-71
literal values 9-75
updating 9-71
See also Named row type; Row type (SQL).
Untyped collection variable
allocating memory for 9-11
deallocating memory for 9-11
declaring 9-9
operating on 9-13
Untyped row variable
allocating memory for 9-57
deallocating memory for 9-57
declaring 9-52
operating on 9-58
Update cursor 9-27, 14-15
UPDATE statement
and NOT FOUND condition 11-21, 11-36
collection columns 9-40, 9-41
collection data 9-29
Collection Derived Table clause 9-29, 9-66
defined statement constant 15-17, 15-18
determining estimated cost of 11-30
determining number of rows updated 11-8, 11-30
determining rowid 11-30
dynamic 14-40, 14-52, 15-26
failing to access rows 11-29
in ANSI-compliant database 3-18
interrupting 12-34, 12-52
known at compile time 14-40, 14-52
not known at compile time 15-26
parameterized 14-52, 15-27, 16-46, 17-43
row-type columns 9-71, 9-74
row-type data 9-66
SET clause 1-37, 14-52
updating smart large-object data 7-17
WHERE CURRENT OF clause 14-19
with DESCRIBE 15-16, 15-23
without WHERE clause 11-15, 11-23, 11-31, 15-18, 15-23
updcd_me sample program 8-17
updcd_nf sample program 8-28
updcd_of sample program 8-23
USER network parameter 1-107, 12-14
User-defined data type. See Distinct data type; Opaque data type.
User-defined function
arguments 14-45
compared with procedure 14-46
creating 14-46
cursor 14-48, 14-50, 16-4, 17-4
definition 14-46
determining return values dynamically 15-27
dropping 14-46
executing 14-46, 14-48
executing dynamically 14-46, 14-48
known at compile time 14-46
noncursor 14-45, 14-48, 14-49, 16-4, 16-12, 17-4
not known at compile time 15-27
parameterized 14-45, 14-52, 14-54, 16-44, 17-42
with sqlda structure 17-26
with system-descriptor area 16-22
See also Cursor function; External function; Noncursor function; SPL function; User-defined routine.
User-defined procedure
arguments 14-45
compared with function 14-46
creating 14-46
definition 14-46
dropping 14-46
executing 14-46, 14-47
executing dynamically 14-47
parameterized 14-45, 14-52, 16-45, 17-42
See also External procedure; SPL procedure; User-defined routine.
User-defined routine
definition 14-46
error messages 11-18, 11-25
languages supported 14-47
warning messages 11-15, 11-22
See also User-defined function; User-defined procedure.
USING DESCRIPTOR clause
of EXECUTE statement 17-4, 17-14, 17-31, 17-41, 17-43
of FETCH statement 17-4, 17-14
of OPEN statement 17-4, 17-14
of PUT statement 17-4, 17-14, 17-31
with a fetch array 15-35
USING host_var clause
of EXECUTE statement 14-52
of OPEN statement 14-54
USING SQL DESCRIPTOR clause
of DESCRIBE statement 16-4, 16-6, 16-14, 16-29
of EXECUTE statement 16-4, 16-11, 16-30
of FETCH statement 16-4, 16-11, 16-14
of OPEN statement 16-4, 16-11
of PUT statement 16-5, 16-11, 16-35
Utility
finderr 1-6
ILogin 1-6
INFORMIX FIND ERROR 1-6
regcopy 1-6
Setnet32 1-6

V

-V preprocessor option 1-50, 1-59
-V processor option 1-55
VALUE descriptor field 16-21
value.h header file 1-24
var binary data type
checking for null 10-31, 10-33, 10-41
corresponding SQL data type 2-5, 2-13
deallocating data buffer 10-35
declaration 10-23
defined constant 2-11
fetching into 10-30
getting data buffer from 10-39
getting size of data buffer 10-40
inserting from 10-28
setting data buffer 10-42
setting size of data buffer 10-44
setting to null 10-29, 10-46
specifying memory allocation 10-37
See also Varying-length opaque data type.
VARCHAR data type
corresponding ESQL/C data type 2-4, 2-12, 3-3
data conversion 2-19, 3-12
defined constant 2-8
fetching 2-19, 3-13
inserting 2-19, 3-14
macros 3-7
role of varchar.h 1-24
truncating values 3-13, 3-15
with null-terminated strings 3-4, 3-5
See also varchar data type.
varchar data type
corresponding SQL data type 2-4, 2-12
defined constant 2-10
definition of 3-4, 3-6
fetching into 2-18, 3-11, 3-17, 5-6
inserting from 3-12, 3-14, 3-17, 3-18
role of varchar.h 1-24
with ANSI-compliant database 3-18
See also VARCHAR data type; CHAR data type.
varchar.h header file 1-24, 3-7
Variable
host. See Host variable.
indicator. See Indicator variable.
main 1-42
Varying-length opaque data type
declaring host variable for 10-23
inserting 10-28
selecting 10-30
See also Fixed-length opaque data type; var binary data type.
VCLENGTH varchar macro 3-7
VCMAX varchar macro 3-7
VCMIN varchar macro 3-7
VCSIZ varchar macro 3-7
Version independence 1-90
Version information 1-55, 1-58
vfork() system call 12-58

W

wait() system call 8-63
Warnings
definition of 11-4
displaying in Microsoft format 1-75
extensions to X/Open standards 1-66
in user-defined routines 11-15, 11-22
Informix-specific messages 11-22, 11-37
redirecting 1-65
suppressing 1-66, 1-75
using sqlca structure 11-37
using SQLSTATE variable 11-22
using the WHENEVER statement 11-45
X/Open messages 11-22
See also Error handling; Exception handling.
-wd processor option 1-84, 1-94, 1-97, 12-16
WDEMO sample program 1-97
-we processor option 1-84, 1-94
WHENEVER statement 11-45
Wildcard character
exclamation point (!) 7-42
question mark (?) 7-42
with smart large-object filenames 7-42
Windows syntax option
-cpu 1-92
-cpu:i 1-92
-cpu:i386 1-92
-Pi 1-93
-rt:d 1-93
-rt:m 1-93
-rt:s 1-93
-rt:t 1-93
-runtime 1-93
-runtime:libc 1-93
-runtime:libcmt 1-93
-runtime:msvcrt 1-93
-Sc 1-94
-ss:c 1-93
-ss:w 1-94
-subsystem:console 1-94
-Sw 1-94
-target:dll 1-94
-target:exe 1-94
-wd 1-94
-we 1-94
WORM optical disc 7-32, 8-40

X

xa.h header file, definition of 1-24
-xopen preprocessor option 1-58, 1-66, 15-20, 15-22
See also X/Open standards.
XSQLCHAR data-type constant 2-9
See also CHAR data type.
XSQLDECIMAL data-type constant 2-9
See also DECIMAL data type.
XSQLFLOAT data-type constant 2-9
See also FLOAT data type.
XSQLINT data-type constant 2-9
See also INTEGER data type.
XSQLSMINT data-type constant 2-9
See also SMALLINT data type.
X/Open compliance
level Intro-15
X/Open standards
checking for Informix extensions to 1-66
connecting to a database 12-18
data type defined constants 1-66, 2-9, 15-21
getting diagnostic information 11-6
nonstandard system descriptor fields 15-8
runtime error values 11-24
SQLSTATE class values 11-14
TYPE field values 16-36
using dynamic SQL statements 15-4, 15-24, 15-25, 15-26, 15-27
warning values 11-22
warnings on extensions 1-66
See also xopen preprocessor option.



Informix-ESQL/C Programmer's Manual, version 9.1
Copyright © 1998, Informix Software, Inc. All rights reserved.