📄 ocidef.h
字号:
/* * $Header: /home/yas/cvs/SQLAPI/include/ora_linux/ocidef.h,v 1.1.1.1 2005/05/05 08:12:35 yas Exp $ ocidef.h *//* copyright (c) 1981 by Relational Software Incorporated *//* copyright (c) 1984 by the Oracle Corporation */ /*NAME ocidefCONTENTS Oracle Call Interface cursor area and LDA definitionsNOTES noneOWNER OatesDATE 09/07/82MODIFIED bpalaval 02/08/01 - Change text to oratext. chliang 02/01/01 - fix olint error. bpalaval 11/16/00 - Bug 1244685 : Fix ALTER CLUSTER issue.. slari 11/08/00 - remove functions duplicated in ociapr.h whe 09/01/99 - 976457:check __cplusplus for C++ code skmishra 04/23/97 - Provide C++ compatibility lchidamb 06/26/96 - put upidef.h, riddef.h within #ifndef slari 06/12/96 - add ocigft_getFcnType dchatter 11/10/95 - ocignfd - oci get native file descriptor slari 05/11/95 - change OCIEVDEF and OCIEVTSF to UPIEVDEF and UPIEVTSF dchatter 04/06/95 - add ifdef flags around OCI_flags lchidamb 04/06/95 - drop maxdsz from ocibndps/ocidfnps slari 04/07/95 - rename opinit to ocipin slari 03/13/95 - thread safety changes dchatter 03/08/95 - piece definitions OCI_*_PIECE lchidamb 12/06/94 - add support for binding/defining with skips dchatter 03/06/95 - merge changes from branch 1.12.720.1 dchatter 02/06/95 - add defines for login mode parameters dchatter 07/06/94 - Deleting CRSCHK, with refcursor, no way to set this dchatter 06/13/94 - add a new LDA flag LDANBL rkooi 11/18/92 - update ocidpr interface mmoore 10/31/92 - add ocidpr gpongrac 11/17/92 - fix oexfet prototype sjain 01/03/92 - Add ocibra rjenkins 11/04/91 - adding prototypes for oparse and oexfet sjain 04/15/91 - Change ocistf proto sjain 04/01/91 - Rearrange oty codes. Add new ones Jain 12/03/90 - Add #define for new describe call Jain 11/29/90 - Add new function code for the new oci calls Mendels 01/20/89 - fix 19170: make ocitbl CONST_DATA Kabcene 01/27/88 - change interfaces to match V5 Navab 12/09/87 - add a parameter to ocierr call Navab 11/30/87 - add ocierr, rename ocioer Navab 10/08/87 - add prototypes for procedure declarations Howard 09/07/87 - endif blah Howard 05/11/87 - Add OTY types Howard 04/27/87 - move ocldef defines here Oates 10/15/85 - Add OCANCEL Oates 09/30/85 - Implement ORA*Net Oates 06/27/85 - Make datatype compatible with upidef.h Andy 05/07/85 - delete CSRFBPIC*/#ifndef UPIDEF #include <upidef.h>#endif#ifndef RIDDEF#include <riddef.h>#endif#if defined(__STDC__) || defined(__cplusplus)#include <ociapr.h>#else#include <ocikpr.h>#endif#ifndef OCIDEF#define OCIDEF #define CSRCHECK 172 /* csrdef is a cursor */#define LDACHECK 202 /* csrdef is a login data area */struct csrdef{ b2 csrrc; /* return code: v2 codes, v4 codes negative */ ub2 csrft; /* function type */ ub4 csrrpc; /* rows processed count */ ub2 csrpeo; /* parse error offset */ ub1 csrfc; /* function code */ ub1 csrlfl; /* lda flag to indicate type of login */ ub2 csrarc; /* actual untranslated return code */ ub1 csrwrn; /* warning flags */ ub1 csrflg; /* error action */ word csrcn; /* cursor number */ riddef csrrid; /* rowid structure */ word csrose; /* os dependent error code */ ub1 csrchk; /* check byte = CSRCHECK - in cursor */ /* check byte = LDACHECK - in LDA */ struct hstdef *csrhst; /* pointer to the hst */};typedef struct csrdef csrdef;typedef struct csrdef ldadef; /* lda is the same as a csr */ /* values for csrlfl */#define LDAFLG 1 /* ...via ologon */#define LDAFLO 2 /* ...via olon or orlon */#define LDANBL 3 /* ...nb logon in progress */ /* valuses for crsfc */#define csrfpa 2 /* ...OSQL */#define csrfex 4 /* ...OEXEC */#define csrfbi 6 /* ...OBIND */#define csrfdb 8 /* ...ODFINN */#define csrfdi 10 /* ...ODSRBN */#define csrffe 12 /* ...OFETCH */#define csrfop 14 /* ...OOPEN */#define csrfcl 16 /* ...OCLOSE */#define csrfds 22 /* ...ODSC */#define csrfnm 24 /* ...ONAME */#define csrfp3 26 /* ...OSQL3 */#define csrfbr 28 /* ...OBNDRV */#define csrfbx 30 /* ...OBNDRN *//*#defe csrfdf 32*/ /* ???? */#define csrfso 34 /* ...OOPT */#define csrfre 36 /* ...ORESUM */#define csrfbn 50 /* ...OBINDN */#define csrfca 52 /* ..OCANCEL */#define csrfsd 54 /* ..OSQLD */ #define csrfef 56 /* ..OEXFEN */#define csrfln 58 /* ..OFLNG */#define csrfdp 60 /* ..ODSCSP */#define csrfba 62 /* ..OBNDRA */#define csrfbps 63 /*..OBINDPS */#define csrfdps 64 /*..ODEFINPS */#define csrfgpi 65 /* ...OGETPI */#define csrfspi 66 /* ...OSETPI *//* values for csrwrn */#define CSRWANY 0x01 /* there is a warning flag set */#define CSRWTRUN 0x02 /* a data item was truncated */#define CSRWNVIC 0x04 /* NULL values were used in an aggregate function */#define CSRWITCE 0x08 /* column count not equal to into list count */#define CSRWUDNW 0x10 /* update or delete without where clause */#define CSRWRSV0 0x20#define CSRWROLL 0x40 /* rollback required */#define CSRWRCHG 0x80 /* change after query start on select for update */ /* values fro csrflg */#define CSRFSPND 0x01 /* current operation suspended */#define CSRFATAL 0x02 /* fatal operation: transaction rolled back */#define CSRFBROW 0x04 /* current row backed out */#define CSRFREFC 0x08 /* ref cursor type CRSCHK disabled for this cursor */#define CSRFNOAR 0x10 /* ref cursor type binds, so no array bind/execute */ /* define function codes; in order of octdef.h */#define OTYCTB 1 /* CREATE TABLE */#define OTYSER 2 /* set role */#define OTYINS 3 /* INSERT */#define OTYSEL 4 /* SELECT */#define OTYUPD 5 /* UPDATE */#define OTYDRO 6 /* drop role */#define OTYDVW 7 /* DROP VIEW */ /* once was validate index */ /* once was create partition */ /* once was alter partition */#define OTYDTB 8 /* DROP TABLE */ /* once was alter space */ /* once was drop space */#define OTYDEL 9 /* DELETE */#define OTYCVW 10 /* create view */#define OTYDUS 11 /* drop user */#define OTYCRO 12 /* create role */#define OTYCSQ 13 /* create sequence */#define OTYASQ 14 /* alter sequence */#define OTYDSQ 16 /* drop sequence */#define OTYCSC 17 /* create schema */#define OTYCCL 18 /* CREATE CLUSTER */ /* once was alter cluster */#define OTYCUS 19 /* create user */#define OTYCIX 20 /* CREATE INDEX */#define OTYDIX 21 /* DROP INDEX */#define OTYDCL 22 /* DROP CLUSTER */#define OTYVIX 23 /* validate index */#define OTYCPR 24 /* create procedure */#define OTYAPR 25 /* alter procedure */#define OTYATB 26 /* alter table */ /* once was evaluate */#define OTYXPL 27 /* explain */#define OTYGRA 28 /* grant */#define OTYREV 29 /* revoke */#define OTYCSY 30 /* create synonym */#define OTYDSY 31 /* drop synonym */#define OTYASY 32 /* alter system switch log */#define OTYSET 33 /* set transaction */#define OTYPLS 34 /* pl/sql execute */#define OTYLTB 35 /* lock */#define OTYNOP 36 /* noop */#define OTYRNM 37 /* rename */#define OTYCMT 38 /* comment */#define OTYAUD 39 /* audit */#define OTYNOA 40 /* no audit */#define OTYAIX 41 /* ALTER INDEX */#define OTYCED 42 /* create external database */#define OTYDED 43 /* drop external database */#define OTYCDB 44 /* create database */#define OTYADB 45 /* alter database */#define OTYCRS 46 /* create rollback segment */#define OTYARS 47 /* alter rollback segment */#define OTYDRS 48 /* drop rollback segment */#define OTYCTS 49 /* create tablespace */#define OTYATS 50 /* alter tablespace */#define OTYDTS 51 /* drop tablespace */#define OTYASE 52 /* alter session */#define OTYAUR 53 /* alter user */#define OTYCWK 54 /* commit (work) */#define OTYROL 55 /* rollback */#define OTYSPT 56 /* savepoint */ /* For number greater than 56 the the type is the same as defined in ** octdef.h for that number. So for completion look at octdef.h */#define OTYDEV OTYCVW /* old DEFINE VIEW = create view */#define OTYACL 195 /* Last used number in octdef.h is 191 */ /* Retired OTY types; try to reserve their values for a while */#ifdef NEVER /* unused */# define OTYCLN 2 /* CREATE LINK */# define OTYDLN 6 /* DROP LINK */# define OTYEXP 11 /* EXPAND */ /* 12 through 17 are also unused */# define OTYACL 19 /* ALTER CLUSTER */# define OTYCSP 23 /* CREATE SPACE */# define OTYASP 24 /* alter space */# define OTYDSP 25 /* drop space */# define OTYEVA 27 /* evaluate */# define OTYVIN 32 /* validate index */# define OTYCPA 33 /* create partition */# define OTYAPA 34 /* alter partition */#endif /*NEVER *//* end of unused */ /* FUNCTION CODES */#define OCLFPA 2 /* parse - OSQL */#define OCLFEX 4 /* execute - OEXEC */#define OCLFBI 6 /* BIND by name - OBIND */#define OCLFDB 8 /* define buffer - ODEFIN */#define OCLFDI 10 /* describe item - ODSC */#define OCLFFE 12 /* fetch - OFETCH */#define OCLFOC 14 /* open cursor - OOPEN */# define OCLFLI OCLFOC /* old name for open cursor - OOPEN */#define OCLFCC 16 /* close cursor - OCLOSE */# define OCLFLO OCLFCC /* old name for close cursor - OCLOSE */#define OCLFDS 22 /* describe - ODSC */#define OCLFON 24 /* get table and column names - ONAME */#define OCLFP3 26 /* parse - OSQL3 */#define OCLFBR 28 /* bind reference by name - OBNDRV */#define OCLFBX 30 /* bind referecne numeric - OBNDRN */#define OCLFSO 34 /* special function - OOPT */#define OCLFRE 36 /* resume - ORESUM */#define OCLFBN 50 /* bindn */#define OCLFMX 52 /* maximum function number */#ifdef NEVER /* unused codes */# define OCLFLK 18 /* open for kernel operations */# define OCLFEK 20 /* execute kernel operations */# define OCLFOK 22 /* kernel close */# define OCLFIN 28 /* logon to oracle */# define OCLFOF 30 /* logoff from oracle */# define OCLFAX 32 /* allocate a context area */# define OCLFPI 34 /* page in context area */# define OCLFIS 36 /* special system logon */# define OCLFCO 38 /* cancel the current operation */# define OCLFGI 40 /* get database id */# define OCLFJN 42 /* journal operation */# define OCLFCL 44 /* cleanup prior execute operation */# define OCLFMC 46 /* map a cursor area */# define OCLFUC 48 /* unmap cursor and restore user maping */#endif /*NEVER *//* obsolete codes */ /* values for ocimode in ocipin call */#define OCIEVDEF UPIEVDEF /* default : non-thread safe enivronment */ #define OCIEVTSF UPIEVTSF /* thread-safe environment *//* OCIL* flags used to determine the mode of login, using ocilog().** Currently defined only for non-blocking and thread-safe logins.*/#define OCILMDEF UPILMDEF /* default, regular login */#define OCILMNBL UPILMNBL /* non-blocking logon */#define OCILMESY UPILMESY /* thread safe but external sync */#define OCILMISY UPILMISY /* internal sync, we do it */#define OCILMTRY UPILMTRY /* try to, but do not block on mutex *//* * since sqllib uses both ocidef and ocidfn the following defines * need to be guarded
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -