文件名称:
oracle-c-call-interface-programmers-guide.pdf(18c)
开发工具:
文件大小: 3mb
下载次数: 0
上传时间: 2019-06-29
详细说明:Oracle C++调用接口 -- OCCI 即 Oracle C++ Call Interface
OCCI 是Oracle 的C++ API, 允许你使用面向对象的特性、本地类、C++语言的方法来访问Oracle数据库 Contents
Preface
Audience
Documentation Accessibility
Related documents
Conventions
Changes in This Release for Oracle C++ Call Interface
Programmer's Guide
Changes in Oracle Database Release 18c Version 18.1
xlii
Changes in Oracle Database 12c Release 2(12.2.0. 1)
1 Introduction to OCCI
Overview of occl
1-1
About benefits of occl
1-2
About Building a C++ application with OCCl
1-2
About functionality of ocCl
1-3
About Procedural and nonprocedural elements
1-3
About Processing SQL Statements
1-4
About Data Definition Language Statements
1-4
About control statements
1-5
About Data Manipulation Language Statements
1-5
About Queries
1-5
Overview of PL/SQL
1-6
About Special OCCI/SQL Terms
1-7
About object Support
1-7
About Client-Side Object Cache
1-8
About Run-time Environment for objects
1-8
About Associative and Navigational Interfaces
1-8
About Interoperability with C(OCD)
1-9
About the metadata class
1-9
About the object Type Translator Utility
1-9
ORACLE
About Additional Support
1-10
Building OCCI Demos
1-10
About OCCl on the Oracle Technology Network
1-11
2 Installation and Upgrading
About Installing oracle C++ Call Interface
2-1
About Upgrading Considerations
2-1
About Determining the oracle database Versions
2-1
Determining the Oracle Client Version During Compilation
2-1
about determining the oracle client and server Versions at Run time
2-2
About the instant client
2-2
About benefits of instant client
2-2
About Installing the Instant client
2-2
About the Oracle Technology Network
About the Complete Client Installation
2-4
Running Oracle Universal Installer
2-4
About the instant client cd
2-4
About Using the Instant Client
Patching Instant Client Shared Libraries on UNIX
2-5
Regenerating the Data Shared Library and zip Files
2-5
About database Connection Names for instant client
2-6
Setting Environment Variables for OCCI Instant Client
2-6
About Instant Client Light (English)
2-7
About Globalization Settings for Instant Client Light(English)
2-7
About Using Instant Client Light(English
2-8
About Installing instant client Light(English)
2-8
Downloading from Oracle Technology Network
2-9
About Using the Client Admin Install
2-9
Installing with Oracle Universal Installer
2-9
About Using oCCl with Microsoft Visual C++
2-9
3 Accessing Oracle Database Using C++
About Connecting to a Database
3-1
Creating and Terminating an Environment
3-1
Opening and Closing a Connection
3-2
About Support for Pluggable Databases
3-3
About Pooling Connections
3-3
About Using Connection Pools
Creating a Connection Pool
ORACLE
Creating Proxy Connections
3-5
Using Stateless Connection Pooling
3-6
About Database Resident Connection Pooling
3-9
Administrating Database Resident Connection Pools
3-10
Using database Resident Connection Pools
3-11
About Executing SQL DDL and DML Statements
3-13
Creating a statement object
3-13
Creating a Statement object that Executes SQL Commands
3-13
Creating a Database Table
3-13
Inserting values into a database table
3-14
Reusing the Statement Object
3-14
Terminating a statement object
3-14
About Types of SQL Statements in the OCCl Environment
3-15
About standard statements
3-15
Using parameterized statements
3-15
Using Callable Statements
3-16
Using Callable Statements that Use Array Parameters
3-16
About streamed Reads and Writes
3-17
Binding Data in Streaming Mode: SELECT/DML and PL/SQL
3-18
Fetching Data in Streaming Mode: PL/SQL
3-18
About Fetching Data in Streaming Mode: Resultset
3-19
Worki
ith Multiple Streams
3-19
About Modifying Rows Iteratively
3-20
Setting the Maximum Number of Iterations
3-20
Setting the Maximum Parameter size
3-21
EXecuting an Iterative operation
3-21
About Executing SQL Queries
3-21
Using the result set
3-22
About specifying the Query
3-23
About Optimizing Performance by Setting Prefetch Count
3-23
About Executing Statements Dynamically
3-23
About statement status definitions
3-24
UNPREPARED
3-24
PREPARED
3-24
RESULT SET AVAILABLE
3-25
UPDATE COUNT AVAILABLE
3-25
NEEDS STREAM DATA
3-25
STREAM DATA AVAILABLE
3-26
About Using Larger Row Count and Error Code Range Data Types
3-26
Using Larger RoW Count in SELECT Operations
3-26
Using Larger Row Count in INSERT, UPDATE, and DELETE Operations
3-27
ORACL∈
About committing a transaction
3-28
Caching Statements
3-28
About Handling EXceptions
3-31
About Handling Null and Truncated Data
3-32
Object Programming
Overview of object Programming
4-1
About Working with Objects in C++ with OCCI
4-2
About Persistent objects
4-2
About Transient Objects
4-3
About∨aues
4-4
About Representing Objects in C++ Applications
4-4
Creating Persistent and Transient objects
Creating Object Representations using the OTT Utility
About Developing a C++ Application using OCCI
44
Developing Basic Object Program Structure
4-6
About Basic Object Operational Flov
4-7
About Initializing OCCI in Object Mode
4-7
about Pinning anobject
4-9
About Operating on an Object in Cache
4-9
about Flushing Changes to the object
4-9
about Deletion of an object
4-9
Migrating C++ Applications to Oracle Using OCCI
4-10
Overview of associative access
4-10
Using SQL to Access Objects
4-10
Inserting and Modifying values
4-11
erview of Navigational access
4-11
Retrieving an Object Reference(REF) from the Database Server
4-11
Pinning an object
4-12
Manipulating object Attributes
4-13
About Marking objects and Flushing Changes
4-13
Marking an Object as Modified(Dirty)
4-13
About recording changes in the database
4-13
Collecting Garbage in the object Cache
4-14
About Ensuring Transactional Consistency of References
4-15
Overview of Complex Object Retrieval
4-15
Retrieving Complex Objects
4-16
About Prefetching Complex Objects
4-17
Working with Collections
4-17
Fetching Embedded Objects
4-18
ORACLE
About nullness
4-19
About Using Object References
4-19
About Deleting Objects from the Database
4-19
About type Inheritance
4-20
about substitutabilit
4-21
Declaring NOT INSTANTIABLE Types and Methods
4-21
About OCCl Support for Type Inherit
4-22
About Connection: getMetaDatao
4-22
About bind and define functions
4-22
About OTT Support for Type Inheritance
4-22
A Sample OCCI Application
4-23
5 Data Types
Overview of Oracle Data Types
5-1
About oCCl Type and Data Conversion
5-1
Internal data Types
5-2
Character Strings and Byte Arrays
Universal Rowid (UROWID)
5-4
External Data Types
Description of External Data Types
5-8
BEILE
5-9
BDOUBLE
5-9
BELOAT
5-10
BLOB
5-10
CHAR
5-10
CHARZ
5-10
CLOB
5-11
DATI
FLOAT
5-12
INTEGER
5-12
INTERVAL DAY TO SECOND
5-12
NTERVAL YEAR TO MONTH
5-13
LONG
5-13
LONG RAW
5-13
LONG VARCHAR
5-13
LONG VARRAW
5-14
NCLOB
5-14
NUMBER
5-14
OCCI BFILE
5-15
OCCI BLOB
5-15
ORACL∈
OCCI BYTES
5-15
5-15
OCCI DATE
5-15
OCCL INTERVALDS
5-15
OCCL INTERVALYM
5-16
OCCI NUMBER
5-16
OCCI POBJECT
5-16
OCCI REF
5-16
OCCI REFANY
5-16
OCCI STRING
5-16
OCCI TIMESTAMP
5-17
OCCI VECTOR
5-17
RAW
5-17
REF
5-17
ROWID
5-17
STRING
5-17
TIMESTAMP
5-18
TIMESTAMP WITH LOCAL TIME ZONE
5-18
TIMESTAMP WITH TIME ZONE
5-18
UNSIGNED INT
5-18
VARCHAR
5-19
VARCHAR2
5-19
VARNUM
5-19
VARRAW
5-19
NATIVE DOUBLE
5-20
NATIVE FLOAT
5-20
Data conversions
5-20
Data Conversions for LOB Data Types
5-22
Data Conversions for Date, Timestamp, and Interval Data Types
5-22
6
Metadata
Overview of metadata
6-1
Using identity column metadata
About Describing Database Metadata
6-3
Using Metadata( Code Examples)
6-4
Attribute reference information
6-7
Parameter attributes
6-8
Table and view Attributes
6-8
Procedure, Function, and Subprogram Attributes
6-9
Package Attributes
6-10
ORACLE
Type Attributes
6-10
Type Attribute Attributes
6-12
ype Method Attributes
6-13
Collection Attributes
6-14
Synonym Attributes
6-14
Sequence Attributes
6-15
Column attributes
6-15
Argument and Result Attributes
6-16
List Attributes
6-18
Schema attributes
6-18
Database attributes
6-18
7 Programming with LOBS
Overview of lobs
7-1
ntroducing Internal LOBs
7-1
Introducing External LOBs
7-2
About Storing LOBS
7-2
Creating loBs in OC CI Applications
7-2
Restricting the opening and closing of lobs
7-3
About Reading and Writing LOBS
7-4
Reading LOBs
7-4
Writing loB
7-6
About Enhancing the Performance of LOB Reads and Writes
7-7
About Using the getchunk Size( Method
7-7
Updating LOBs
7-7
About Reading and Writing Multiple LOBs
7-8
About Using the Interfaces for Reading and Writing Multiple LOBs
7-8
Using objects with LOB Attributes
7-9
About Using SecureFiles
7-10
About Using secure File Compression
7-10
About Using Secure Files Encryption
7-1
LO
About Using SecureFiles Deduplication
7-10
About Combining SecureFiles Compression, Encryption, and Deduplication
7-10
Secure Files LOB Types and Constants
7-11
8 Object Type Translator Utility
Overview of the object Type Translator Utility
8-1
Using the ott utility
8-2
Creating Types in the Database
8-2
ORACL∈
About Invoking the OTT Utility
8-3
Specifying OTT Parameters
8-3
About Setting Parameters on the Command Line
8-3
About Setting Parameters in the INTYPE File
8-4
About Setting Parameters in the Configuration File
8-4
Invoking the oTT Utility on the command Line
8-4
Elements used on the ott col
d line
8-5
OTT Utility Parameters
8-5
ATTRACCESS
8-6
CASE
8-6
CODE
8-7
CONFIG
8-7
CPPFILE
ERRTYPE
HEILE
8-8
INTYPE
8-8
MAPFILE
8-8
MAPFUNC
8-8
OUTTYPE
8-9
SCHEMA NAMES
8-9
TRANSITIVE
8-10
UNICODE
8-11
USE MARKER
8-12
USERID
8-12
Where OTT Parameters Can Appear
8-13
File Name comparison restriction
8-13
Using the OTT Command on Microsoft Windows
8-14
About using the intYpE File
8-14
Using the INTYPE File
8-14
Structure of the intypE File
8-15
INTYPE File Type Specifications
8-16
Using Nested include File generation
8-17
Using oTT Utility Data Type Mappings
8-19
Default Name Mapping
8-24
Overview of the outtype file
8-25
Using the oTT Utility and OCCl Applications
8-26
Generating C++ Classes Generated by the oTT Utility
8-27
Map Registry Function
8-28
Extending C++ Classes
8-28
Carrying Forward User Added Code
8-29
How to Use Properties of oTT Markers
8-30
ORACLE
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.