OO4O for Visual Basic 6 (+SP5)で使用する共通モジュール。
定数はオラクル9i(R2)インストール後にインストールされる「ORACONST.TXT」をそのまま使用。
「basOO4O.bas」内に定義
非同期ストアドプロシージャを使わない場合は下3つの宣言は不要です。
‘グローバル変数宣言——————————————–
‘OraSessionオブジェクト
‘アプリケーション内で使用されるOraDatabase、OraConnection
‘およびOraDynasetオブジェクトのコレクションを管理する
Public poraSess As OraSessionClass
‘OraDatabaseオブジェクト変数
‘SQLまたはPL/SQLを実行するメソッドを提供する
Public poraDb As OraDatabase
‘OraSessionオブジェクト
‘アプリケーション内で使用されるOraDatabase、OraConnection
‘およびOraDynasetオブジェクトのコレクションを管理する
‘【注】非同期ストアドプロシージャ専用
Public poraSessW As OraSessionClass
‘OraDatabaseオブジェクト変数
‘SQLまたはPL/SQLを実行するメソッドを提供する
‘【注】非同期ストアドプロシージャ専用
Public poraDbW As OraDatabase
‘オラクルのOraSqlStmtオブジェクト変数
‘【注】非同期ストアドプロシージャ専用
Public poraSQLW As OraSqlStmt
「ORACONST.TXT」ファイルの内容
オラクルをインストールしたフォルダ「[ドライブ]:¥oracle¥ora92¥oo4o¥」にある。
注意)
以下は内容は使わずに必ずオラクルをインストールしたフォルダから 「ORACONST.TXT」ファイルをVBにインクルードして下さい。
以下は参考内容です。
実際は日本語「【...】」のコメントは付いていない。
””””””””””””””
‘ Oracle Objects for OLE global constant file.
‘ This file can be loaded into a code module.
””””””””””””””
‘Editmode property values
‘ These are intended to match similar constants in the
‘ Visual Basic file CONSTANT.TXT
Global Const ORADATA_EDITNONE = 0
Global Const ORADATA_EDITMODE = 1
Global Const ORADATA_EDITADD = 2
‘ Field Data Types
‘ These are intended to match similar constants in the
‘ Visual Basic file DATACONS.TXT
‘【バインド変数のデータ型】
Global Const ORADB_BOOLEAN = 1 ‘【BOOLEAN型】
Global Const ORADB_BYTE = 2 ‘【バイト型】
Global Const ORADB_INTEGER = 3 ‘【整数型】
Global Const ORADB_LONG = 4 ‘【長整数型】
Global Const ORADB_CURRENCY = 5 ‘【通貨型】
Global Const ORADB_SINGLE = 6 ‘【型】
Global Const ORADB_DOUBLE = 7 ‘【型】
Global Const ORADB_DATE = 8 ‘【日付型】
Global Const ORADB_OBJECT = 9 ‘【オブジェクト型】
Global Const ORADB_TEXT = 10 ‘【テキスト型】
Global Const ORADB_LONGBINARY = 11 ‘【型】
Global Const ORADB_MEMO = 12 ‘【メモ型】
‘Parameter Types
‘【バインド変数の入出力型】
Global Const ORAPARM_INPUT = 1 ‘【入力型】
Global Const ORAPARM_OUTPUT = 2 ‘【出力型】
Global Const ORAPARM_BOTH = 3 ‘【入出力型】
‘Parameter Status
Global Const ORAPSTAT_INPUT = &H1&
Global Const ORAPSTAT_OUTPUT = &H2&
Global Const ORAPSTAT_AUTOENABLE = &H4&
Global Const ORAPSTAT_ENABLE = &H8&
‘CreateDynaset Method Options
‘【データベースの検索モード/★重要です/パフォーマンスに影響大】
Global Const ORADYN_DEFAULT = &H0& ‘【デフォルト:パフォーマンス大】
Global Const ORADYN_NO_AUTOBIND = &H1& ‘【】
Global Const ORADYN_NO_BLANKSTRIP = &H2& ‘【】
Global Const ORADYN_READONLY = &H4& ‘【読み込みのみ】
Global Const ORADYN_NOCACHE = &H8& ‘【キャッシュを持たない】
Global Const ORADYN_ORAMODE = &H10& ‘【オラクルモード】
Global Const ORADYN_NO_REFETCH = &H20& ‘【】
Global Const ORADYN_NO_MOVEFIRST = &H40& ‘【】
Global Const ORADYN_DIRTY_WRITE = &H80& ‘【】
‘OpenDatabase Method Options
‘【データベースのオープンモード】
Global Const ORADB_DEFAULT = &H0& ‘【デフォルト:更新可能】
Global Const ORADB_ORAMODE = &H1& ‘【オラクルモード:通常はこれを指定する】
Global Const ORADB_NOWAIT = &H2& ‘【NOWAITモード:SQL等の終了を待たない】
Global Const ORADB_DBDEFAULT = &H4& ‘【】
Global Const ORADB_DEFERRED = &H8& ‘【】
Global Const ORADB_ENLIST_IN_MTS = &H10& ‘【】
‘Oracle type codes
‘【オラクルデータベースの項目データ型】
Global Const ORATYPE_VARCHAR2 = 1 ‘【VARCHAR2型】
Global Const ORATYPE_NUMBER = 2 ‘【型】
Global Const ORATYPE_SINT = 3 ‘【型】
Global Const ORATYPE_FLOAT = 4 ‘【型】
Global Const ORATYPE_STRING = 5 ‘【型】
Global Const ORATYPE_DECIMAL = 7 ‘【型】
Global Const ORATYPE_VARCHAR = 9 ‘【型】
Global Const ORATYPE_DATE = 12 ‘【型】
Global Const ORATYPE_REAL = 21 ‘【型】
Global Const ORATYPE_DOUBLE = 22 ‘【型】
Global Const ORATYPE_UNSIGNED8 = 23 ‘【型】
Global Const ORATYPE_UNSIGNED16= 25 ‘【型】
Global Const ORATYPE_UNSIGNED32= 26 ‘【型】
Global Const ORATYPE_SIGNED8 = 27 ‘【型】
Global Const ORATYPE_SIGNED16 = 28 ‘【型】
Global Const ORATYPE_SIGNED32 = 29 ‘【型】
Global Const ORATYPE_PTR = 32 ‘【型】
Global Const ORATYPE_OPAQUE = 58 ‘【型】
Global Const ORATYPE_UINT = 68 ‘【型】
Global Const ORATYPE_RAW = 95 ‘【型】
Global Const ORATYPE_CHAR = 96 ‘【型】
Global Const ORATYPE_CHARZ = 97 ‘【型】
Global Const ORATYPE_CURSOR = 102 ‘【型】
Global Const ORATYPE_ROWID = 104 ‘【型】
Global Const ORATYPE_MLSLABEL = 105 ‘【型】
Global Const ORATYPE_OBJECT = 108 ‘【型】
Global Const ORATYPE_REF = 110 ‘【型】
Global Const ORATYPE_CLOB = 112 ‘【型】
Global Const ORATYPE_BLOB = 113 ‘【型】
Global Const ORATYPE_BFILE = 114 ‘【型】
Global Const ORATYPE_CFILE = 115 ‘【型】
Global Const ORATYPE_RSLT = 116 ‘【型】
Global Const ORATYPE_NAMEDCOLLECTION = 122 ‘【型】
Global Const ORATYPE_COLL = 122 ‘【型】
Global Const ORATYPE_SYSFIRST = 228 ‘【型】
Global Const ORATYPE_SYSLAST = 235 ‘【型】
Global Const ORATYPE_OCTET = 245 ‘【型】
Global Const ORATYPE_SMALLINT = 246 ‘【型】
Global Const ORATYPE_VARRAY = 247 ‘【型】
Global Const ORATYPE_TABLE = 248 ‘【型】
Global Const ORATYPE_OTMLAST = 320 ‘【型】
Global Const ORATYPE_RAW_BIN = 2000 ‘【型】
‘CreateSql Method options
Global Const ORASQL_DEFAULT = &H0&
Global Const ORASQL_NO_AUTOBIND = &H1&
Global Const ORASQL_FAILEXEC = &H2&
Global Const ORASQL_NONBLK = &H4&
‘OraLob operation return codes
Global Const ORALOB_SUCCESS = 0
Global Const ORALOB_NEED_DATA = 99
Global Const ORALOB_NODATA = 100
‘OraLob Write operation chunck modes
Global Const ORALOB_ONE_PIECE = 0
Global Const ORALOB_FIRST_PIECE = 1
Global Const ORALOB_NEXT_PIECE = 2
Global Const ORALOB_LAST_PIECE = 3
‘OraRef Lock operation
Global Const ORAREF_NO_LOCK = 1
Global Const ORAREF_EXCLUSIVE_LOCK = 2
Global Const ORAREF_NOWAIT_LOCK = 3
‘OraRef Pin operaion
Global Const ORAREF_READ_ANY = 3
Global Const ORAREF_READ_RECENT = 4
Global Const ORAREF_READ_LATEST = 5
‘OIP errors returned as part of the OLE Automation error.
Global Const OERROR_ADVISEULINK = 4096 ‘ Invalid advisory connection
Global Const OERROR_POSITION = 4098 ‘ Invalid database position
Global Const OERROR_NOFIELDNAME = 4099 ‘ Field ‘field-name’ not found
Global Const OERROR_TRANSIP = 4101 ‘ Transaction already in process
Global Const OERROR_TRANSNIPC = 4104 ‘ Commit detected with no active transaction
Global Const OERROR_TRANSNIPR = 4105 ‘ Rollback detected with no active transaction
Global Const OERROR_NODSET = 4106 ‘ No such set attached to connection
Global Const OERROR_INVROWNUM = 4108 ‘ Invalid row reference
Global Const OERROR_TEMPFILE = 4109 ‘ Error creating temporary file
Global Const OERROR_DUPSESSION = 4110 ‘ Duplicate session name
Global Const OERROR_NOSESSION = 4111 ‘ Session not found during detach
Global Const OERROR_NOOBJECTN = 4112 ‘ No such object named ‘object-name’
Global Const OERROR_DUPCONN = 4113 ‘ Duplicate connection name
Global Const OERROR_NOCONN = 4114 ‘ No such connection during detach
Global Const OERROR_BFINDEX = 4115 ‘ Invalid field index
Global Const OERROR_CURNREADY = 4116 ‘ Cursor not ready for I/O
Global Const OERROR_NOUPDATES = 4117 ‘ Not an updatable set
Global Const OERROR_NOTEDITING = 4118 ‘ Attempt to update without edit or add operation
Global Const OERROR_DATACHANGE = 4119 ‘ Data has been modified
Global Const OERROR_NOBUFMEM = 4120 ‘ No memory for data transfer buffers
Global Const OERROR_INVBKMRK = 4121 ‘ Invalid bookmark
Global Const OERROR_BNDVNOEN = 4122 ‘ Bind variable not fully enabled
Global Const OERROR_DUPPARAM = 4123 ‘ Duplicate parameter name
Global Const OERROR_INVARGVAL = 4124 ‘ Invalid argument value
Global Const OERROR_INVFLDTYPE = 4125 ‘ Invalid field type
Global Const OERROR_TRANSFORUP = 4127 ‘ For Update detected with no active transaction
Global Const OERROR_NOTUPFORUP = 4128 ‘ For Update detected but not updatable set
Global Const OERROR_TRANSLOCK = 4129 ‘ Commit/Rollback with SELECT FOR UPDATE in progress
Global Const OERROR_CACHEPARM = 4130 ‘ Invalid cache parameter
Global Const OERROR_FLDRQROWID = 4131 ‘ Field processing requires ROWID
Global Const OERROR_OUTOFMEMORY = 4132 ‘ Internal Error
Global Const OERROR_MAXSIZE = 4135 ‘ Element size specified in AddTable exceeds the maximum allowed size for that variable type. See AddTable Method for more details.
Global Const OERROR_INVDIMENSION = 4136 ‘ Dimension specified in AddTable is invalid (i.e. negative). See AddTable Method for more details.
Global Const OERROR_MAXBUFFER = 4137 ‘ Buffer size for parameter array variable exceeds 32512 bytes (OCI limit).
Global Const OERROR_ARRAYSIZ = 4138 ‘ Dimensions of array parameters used in insert/update/delete statements are not equal.
Global Const OERROR_ARRAYFAILP = 4139 ‘ Error processing arrays. For details refer to OO4OERR.LOG in the windows directory.
Global Const OERROR_CREATEPOOL = 4147 ‘ Database Pool Already exists for this session.
Global Const OERROR_GETDB = 4148 ‘ Unable to obtain a free database object from the pool.
Global Const OERROR_NOOBJECT = 4796 ‘Creating Oracle object instance in client side object cache is failed
Global Const OERROR_BINDERR = 4797 ‘Binding Oracle object instance to the SQL statement is failed
Global Const OERROR_NOATTRNAME = 4798 ‘Getting attribute name of Oracle object instance is failed
Global Const OERROR_NOATTRINDEX = 4799 ‘Getting attribute index of Oracle object instance is failed
Global Const OERROR_INVINPOBJECT = 4801 ‘Invalid input object type for binding operation
Global Const OERROR_BAD_INDICATOR = 4802 ‘Fetched Oracle Object instance comes with invalid indicator structure
Global Const OERROR_OBJINSTNULL = 4803 ‘Operation on NULL Oracle object instance is failed. See IsNull property on OraObject
Global Const OERROR_REFNULL = 4804 ‘Pin Operation on NULL Ref value is failed. See IsRefNull property on OraRef
Global Const OERROR_INVPOLLPARAMS = 4896 ‘Invalid polling amount and chunksize specified for LOB read/write operation.
Global Const OERROR_INVSEEKPARAMS = 4897 ‘Invalid seek value is specified for LOB read/write operation.
Global Const OERROR_LOBREAD = 4898 ‘Read operation failed
Global Const OERROR_LOBWRITE = 4899 ‘Write operation failure
Global Const OERROR_INVCLOBBUF = 4900 ‘Input buffer type is not string for CLOB write operation
Global Const OERROR_INVBLOBBUF = 4901 ‘Input buffer type is not bytes for BLOB write operation
Global Const OERROR_INVLOBLEN = 4902 ‘Invalid buffer length for LOB write operation
Global Const OERROR_NOEDIT = 4903 ‘Write,Trim ,Append,Copy operation is allowed outside the dynaset edit
Global Const OERROR_INVINPUTLOB = 4904 ‘Invalid input LOB for bind operation
Global Const OERROR_NOEDITONCLONE = 4905 ‘Write,Trim,Append,Copy is not allowed for clone LOB object
Global Const OERROR_LOBFILEOPEN = 4906 ‘Specified file could not be opened in LOB operation
Global Const OERROR_LOBFILEIOERR = 4907 ‘File Read or Write failed in LOB Operation.
Global Const OERROR_LOBNULL = 4908 ‘Operation on NULL LOB has failed.
Global Const OERROR_AQCREATEERR = 4996 ‘Error creating AQ object
Global Const OERROR_MSGCREATEERR = 4997 ‘Error creating AQMsg object
Global Const OERROR_PAYLOADCREATEERR = 4998 ‘Error creating Payload object
Global Const OERROR_MAXAGENTS = 4998 ‘Maximum number of subscribers exceeded.
Global Const OERROR_AGENTCREATEERR = 5000 ‘Error creating AQ Agent
Global Const OERROR_COLLINSTNULL = 5196 ‘Operation on NULL Oracle collection is failed. See IsNull property on OraCollection
Global Const OERROR_NOELEMENT = 5197 ‘Element does not exist for given index
Global Const OERROR_INVINDEX = 5198 ‘Invalid collection index is specified
Global Const OERROR_NODELETE = 5199 ‘Delete operation is not supported for VARRAY collection type
Global Const OERROR_SAFEARRINVELEM = 5200 ‘Variant SafeArray cannot be created from the collection having non scalar element types
Global Const OERROR_NULLNUMBER = 5296 ‘Operation on NULL Oracle Number is failed.
‘ meta data type, OraMetaData.type returns one of the following
Global Const ORAMD_TABLE = 1
Global Const ORAMD_VIEW = 2
Global Const ORAMD_COLUMN = 3
Global Const ORAMD_COLUMN_LIST = 4
Global Const ORAMD_TYPE = 5
Global Const ORAMD_TYPE_ATTR = 6
Global Const ORAMD_TYPE_ATTR_LIST = 7
Global Const ORAMD_TYPE_METHOD = 8
Global Const ORAMD_TYPE_METHOD_LIST = 9
Global Const ORAMD_TYPE_ARG = 10
Global Const ORAMD_TYPE_RESULT = 11
Global Const ORAMD_PROC = 12
Global Const ORAMD_FUNC = 13
Global Const ORAMD_ARG = 14
Global Const ORAMD_ARG_LIST = 15
Global Const ORAMD_PACKAGE = 16
Global Const ORAMD_SUBPROG_LIST = 17
Global Const ORAMD_COLLECTION = 18
Global Const ORAMD_SYNONYM = 19
Global Const ORAMD_SEQENCE = 20
Global Const ORAMD_SCHEMA = 21
Global Const ORAMD_OBJECT_LIST = 22
Global Const ORAMD_SCHEMA_LIST = 23
Global Const ORAMD_DATABASE = 24
‘ AQ Options
‘ AQ Visible options
Global Const ORAAQ_ENQ_IMMEDIATE = 1
Global Const ORAAQ_ENQ_ON_COMMIT = 2
‘ AQ MessageID options
Global Const ORAAQ_NULL_MSGID = NULL
‘ Selection Criteria for filtering messages
Global Const ORAAQ_ANY = 0
Global Const ORAAQ_CONSUMER = 1
Global Const ORAAQ_MSGID = 2
‘ Locking behaviour while dequeueing messages
Global Const ORAAQ_DQ_BROWSE = 1
Global Const ORAAQ_DQ_LOCKED = 2
Global Const ORAAQ_DQ_REMOVE = 3
‘ Message Position criteria for dequeuing
Global Const ORAAQ_DQ_FIRST_MSG = 1
Global Const ORAAQ_DQ_NEXT_TRANS = 2
Global Const ORAAQ_DQ_NEXT_MSG = 3
‘ Wait options for a dequeue operation
Global Const ORAAQ_DQ_WAIT_FOREVER = –1
Global Const ORAAQ_DQ_NOWAIT = 0
‘ Values of various OraAQMsg properties
‘ Number of Seconds to delay a newly enqueued message
‘ before it is available for dequeueing
Global Const ORAAQ_MSG_NO_DELAY = 0
‘ Prioirity values for messages
Global Const ORAAQ_MSG_PRIORITY_NORMAL = 0
Global Const ORAAQ_MSG_PRIORITY_HIGH = –10
Global Const ORAAQ_MSG_PRIORITY_LOW = 10
‘ Message Expiration in seconds
Global Const ORAAQ_MSG_NO_EXPIRE = 0
Global Const ORAAQ_MAX_AGENTS = 10
‘Non Blocking return values
Global Const ORASQL_STILL_EXECUTING = –3123
Global Const ORASQL_SUCCESS = 0
初期登録日: 2003年11月09日
最終更新日: 2008年01月26日
< Home ヘ戻る >
ブラウザ画面の文字サイズを変更するショートカットキー
Shortcut Keys
|