Atitit.跨语言数据库db  api包容性 jdbc odbc ado oledb 增强方案

Atitit.跨语言数据库db  api包容性 jdbc odbc ado oledb 增强方案

 

1. 跨语言db api兼容性。。1

贰. 当下做客数据库的接口很多。相比较常用的jdbc odbc 以及c api (php用此接口),共约十二个类+1二十多个c函数一

2.一. Jdbc api数码  约5柒个类..java.sql包上面包车型客车。。差不离几百个点子函数吧。。二

2.2. Odbc api数量::约78个,odbc是个非oo的api2

2.3. C api (mysql ): 约50个。。2

2.四. Ado   玖个类  约一百七个api了吧2

2.5. Oledb 32个类2

三. ADO、OLEDB、ODBC之间的涉嫌图4

四. Jdbc Package java.sql Jdbc api数量  约五16个类..java.sql包下边包车型大巴。。伍

5. Odbc api信息 约78个api10

6. 参考19

 

 

1. 跨语言db api兼容性。。

方便源码移植。。供给达成常用的 jdbc odbc c_api接口。。总共约好几百个个情势函数(预估,因为jdbc方法数量与性格方今未总结)

 

 

贰. 当下做客数据库的接口很多。比较常用的jdbc odbc 以及c api (php用此接口),共约10一个类+1二十八个c函数

 

二.一. Jdbc api数额  约伍二十一个类..java.sql包上边包车型地铁。。差不多几百个法子函数吧。。

2.2. Odbc api数量::约78个,odbc是个非oo的api

2.3. C api (mysql ): 约50个。。

 

 

这么些开发包帮忙二种方式的数据库开发:预编写翻译的松手情势(例如Oracle的ProC,SQL Server的ESQL)和API调用(例如Oracle的OCI)。

 

我:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 Ake巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:146651983九@qq.com

转发请注解来源: http://www.cnblogs.com/attilax/

 

二.肆. Ado   8个类  约一百多少个api了呢

ADO 对象

· Command

· Connection

· Error

· Field

· Parameter

· Property

· Record

· Recordset

· Stream

 

 

2.5. Oledb 32个类

System.Data.OleDb.aspx)

OleDbCommand 类

OleDbCommandBuilder 类

OleDbConnection 类

OleDbConnection 成员

奥莱DbConnection 构造函数

OleDbConnection 方法

OleDbConnection 属性

OleDbConnection 事件

OleDbConnectionStringBuilder 类

OleDbDataAdapter 类

OleDbDataReader 类

OleDbEnumerator 类

OleDbError 类

OleDbErrorCollection 类

OleDbException 类

OleDbFactory 类

OleDbInfoMessageEventArgs 类

OleDbInfoMessageEventHandler 委托

OleDbLiteral 枚举

OleDbMetaDataCollectionNames 类

OleDbMetaDataColumnNames 类

OleDbParameter 类

OleDbParameterCollection 类

OleDbPermission 类

OleDbPermissionAttribute 类

OleDbRowUpdatedEventArgs 类

OleDbRowUpdatedEventHandler 委托

OleDbRowUpdatingEventArgs 类

OleDbRowUpdatingEventHandler 委托

OleDbSchemaGuid 类

OleDbTransaction 类

OleDbType 枚举

 

三. ADO、OLEDB、ODBC之间的关联图 

Oracle的OCI是1个十一分卓越的C语言开发包,在ODBC中就在很多地点参照了OCI的筹划。

 

下边是微软提出的拥有连接方式:

    ODBC(Open DataBase Connectivity)开放数据库互联。是由微软基本的数据库链接标准,只援助关系型数据库。

    DAO(Data Access Object)数据访问对象。不提供远程访问成效。

    猎豹CS陆DO(Remote Data Object)远程数据对象。速度快,扶助SQL Server存款和储蓄进度。

    OLEDB(Object Linking and Embedding DataBase)对象链接和停放数据库。

    ADO(ActiveX Data Object)ActiveX数据对象。

    使用中,我们1般用OLE-DB和ADO替代DAO和SportageDO,DAO和福睿斯DO小编也没用过,所以上边主要记录下ADO、OLEDB、ODBC之间的涉嫌。

    Oracle 1编程

接口)。这么些API利用 SQL来形成其大多数

 

 

肆. Jdbc Package java.sql Jdbc api数量  约57个类..java.sql包上面包车型地铁。。

 

Provides the API for accessing and processing data stored in a data source (usually a relational database) using the JavaTM programming language.

See: Description

· 

 

Interface Summary

Interface

Description

Array

The mapping in the Java programming language for the SQL type ARRAY.

Blob

The representation (mapping) in the Java™ programming language of an SQL BLOB value.

CallableStatement

The interface used to execute SQL stored procedures.

Clob

The mapping in the Java™ programming language for the SQL CLOB type.

Connection

A connection (session) with a specific database.

DatabaseMetaData

Comprehensive information about the database as a whole.

Driver

The interface that every driver class must implement.

DriverAction

An interface that must be implemented when a Driver wants to be notified by DriverManager.

NClob

The mapping in the Java™ programming language for the SQL NCLOB type.

ParameterMetaData

An object that can be used to get information about the types and properties for each parameter marker in a PreparedStatement object.

PreparedStatement

An object that represents a precompiled SQL statement.

Ref

The mapping in the Java programming language of an SQL REF value, which is a reference to an SQL structured type value in the database.

ResultSet

A table of data representing a database result set, which is usually generated by executing a statement that queries the database.

ResultSetMetaData

An object that can be used to get information about the types and properties of the columns in a ResultSet object.

RowId

The representation (mapping) in the Java programming language of an SQL ROWID value.

Savepoint

The representation of a savepoint, which is a point within the current transaction that can be referenced from the Connection.rollback method.

SQLData

The interface used for the custom mapping of an SQL user-defined type (UDT) to a class in the Java programming language.

SQLInput

An input stream that contains a stream of values representing an instance of an SQL structured type or an SQL distinct type.

SQLOutput

The output stream for writing the attributes of a user-defined type back to the database.

SQLType

An object that is used to identify a generic SQL type, called a JDBC type or a vendor specific data type.

SQLXML

The mapping in the JavaTM programming language for the SQL XML type.

Statement

The object used for executing a static SQL statement and returning the results it produces.

Struct

The standard mapping in the Java programming language for an SQL structured type.

Wrapper

Interface for JDBC classes which provide the ability to retrieve the delegate instance when the instance in question is in fact a proxy class.

 

· 

· 

 

Class Summary

Class

Description

Date

A thin wrapper around a millisecond value that allows JDBC to identify this as an SQL DATE value.

DriverManager

The basic service for managing a set of JDBC drivers.
NOTE: The DataSource interface, new in the JDBC 2.0 API, provides another way to connect to a data source.

DriverPropertyInfo

Driver properties for making a connection.

SQLPermission

The permission for which the SecurityManager will check when code that is running an application with a SecurityManager enabled, calls theDriverManager.deregisterDriver method, DriverManager.setLogWriter method, DriverManager.setLogStream (deprecated) method,SyncFactory.setJNDIContext method, SyncFactory.setLogger method, Connection.setNetworktimeout method, or the Connection.abort method.

Time

A thin wrapper around the java.util.Date class that allows the JDBC API to identify this as an SQL TIME value.

Timestamp

A thin wrapper around java.util.Date that allows the JDBC API to identify this as an SQL TIMESTAMP value.

Types

The class that defines the constants that are used to identify generic SQL types, called JDBC types.

 

· 

· 

 

Enum Summary

Enum

Description

ClientInfoStatus

Enumeration for status of the reason that a property could not be set via a call to Connection.setClientInfo

JDBCType

Defines the constants that are used to identify generic SQL types, called JDBC types.

PseudoColumnUsage

Enumeration for pseudo/hidden column usage.

RowIdLifetime

Enumeration for RowId life-time values.

 

· 

· 

 

Exception Summary

Exception

Description

BatchUpdateException

The subclass of SQLException thrown when an error occurs during a batch update operation.

DataTruncation

An exception thrown as a DataTruncation exception (on writes) or reported as a DataTruncation warning (on reads) when a data values is unexpectedly truncated for reasons other than its having exceeded MaxFieldSize.

SQLClientInfoException

The subclass of SQLException is thrown when one or more client info properties could not be set on a Connection.

SQLDataException

The subclass of SQLException thrown when the SQLState class value is ’22’, or under vendor-specified conditions.

SQLException

An exception that provides information on a database access error or other errors.

SQLFeatureNotSupportedException

The subclass of SQLException thrown when the SQLState class value is ‘0A’ ( the value is ‘zero’ A).

SQLIntegrityConstraintViolationException

The subclass of SQLException thrown when the SQLState class value is ’23’, or under vendor-specified conditions.

SQLInvalidAuthorizationSpecException

The subclass of SQLException thrown when the SQLState class value is ’28’, or under vendor-specified conditions.

SQLNonTransientConnectionException

The subclass of SQLException thrown for the SQLState class value ’08’, or under vendor-specified conditions.

SQLNonTransientException

The subclass of SQLException thrown when an instance where a retry of the same operation would fail unless the cause of the SQLException is corrected.

SQLRecoverableException

The subclass of SQLException thrown in situations where a previously failed operation might be able to succeed if the application performs some recovery steps and retries the entire transaction or in the case of a distributed transaction, the transaction branch.

SQLSyntaxErrorException

The subclass of SQLException thrown when the SQLState class value is ’42’, or under vendor-specified conditions.

SQLTimeoutException

The subclass of SQLException thrown when the timeout specified by Statement.setQueryTimeout, DriverManager.setLoginTimeout,DataSource.setLoginTimeout,XADataSource.setLoginTimeout has expired.

SQLTransactionRollbackException

The subclass of SQLException thrown when the SQLState class value is ’40’, or under vendor-specified conditions.

SQLTransientConnectionException

The subclass of SQLException for the SQLState class value ’08’, or under vendor-specified conditions.

SQLTransientException

The subclass of SQLException is thrown in situations where a previously failed operation might be able to succeed when the operation is retried without any intervention by application-level functionality.

SQLWarning

An exception that provides information on database access warnings.

 

· 

 

5. Odbc api信息 约78个api

据书上说 ODBC 的条件,其API共可分为以下9类:

1. SQLAllocEnv.

2. SQLAllocConnect.

3. SQLConnect.

4. SQLPriverConnect.

5. SQLBrowseConnect.

1. SQLDataSource.

2. SQLGetInfo.

3. SQLGetFunctions.

4. SQLGetTypeInfo.

1. SQLSetConnectOption.

 

This section contains topics for the following functions:

· 

SQLAllocConnect Function.aspx)

· 

· 

SQLAllocEnv Function.aspx)

· 

· 

SQLAllocHandle Function.aspx)

· 

· 

SQLAllocStmt Function.aspx)

· 

· 

SQLBindCol Function.aspx)

· 

· 

SQLBindParameter Function.aspx)

· 

· 

SQLBrowseConnect Function.aspx)

· 

· 

SQLBulkOperations Function.aspx)

· 

· 

SQLCancel Function.aspx)

· 

· 

SQLCancelHandle Function.aspx)

· 

· 

SQLCloseCursor Function.aspx)

· 

· 

SQLColAttribute Function.aspx)

· 

· 

SQLColAttributes Function.aspx)

· 

· 

SQLColumnPrivileges Function.aspx)

· 

· 

SQLColumns Function.aspx)

· 

· 

SQLCompleteAsync Function.aspx)

· 

· 

SQLConnect Function.aspx)

· 

· 

SQLCopyDesc Function.aspx)

· 

· 

SQLDataSources Function.aspx)

· 

· 

SQLDescribeCol Function.aspx)

· 

· 

SQLDescribeParam Function.aspx)

· 

· 

SQLDisconnect Function.aspx)

· 

· 

SQLDriverConnect Function.aspx)

· 

· 

SQLDrivers Function.aspx)

· 

· 

SQLEndTran Function.aspx)

· 

· 

SQLError Function.aspx)

· 

· 

SQLExecDirect Function.aspx)

· 

· 

SQLExecute Function.aspx)

· 

· 

SQLExtendedFetch Function.aspx)

· 

· 

SQLFetch Function.aspx)

· 

· 

SQLFetchScroll Function.aspx)

· 

· 

SQLForeignKeys Function.aspx)

· 

· 

SQLFreeConnect Function.aspx)

· 

· 

SQLFreeEnv Function.aspx)

· 

· 

Oracle,SQLFreeHandle Function.aspx)

· 

· 

SQLFreeStmt Function.aspx)

· 

· 

SQLGetConnectAttr Function.aspx)

· 

· 

SQLGetConnectOption Function.aspx)

· 

· 

SQLGetCursorName Function.aspx)

· 

· 

SQLGetData Function.aspx)

· 

· 

SQLGetDescField Function.aspx)

· 

· 

SQLGetDescRec Function.aspx)

· 

· 

SQLGetDiagField Function.aspx)

· 

· 

SQLGetDiagRec Function.aspx)

· 

· 

SQLGetEnvAttr Function.aspx)

· 

· 

SQLGetFunctions Function.aspx)

· 

· 

SQLGetInfo Function.aspx)

· 

· 

SQLGetStmtAttr Function.aspx)

· 

· 

SQLGetStmtOption Function.aspx)

· 

· 

SQLGetTypeInfo Function.aspx)

· 

· 

SQLMoreResults Function.aspx)

· 

· 

SQLNativeSql Function.aspx)

· 

· 

SQLNumParams Function.aspx)

· 

· 

SQLNumResultCols Function.aspx)

· 

· 

SQLParamData Function.aspx)

· 

· 

SQLParamOptions Function.aspx)

· 

· 

SQLPrepare Function.aspx)

· 

· 

SQLPrimaryKeys Function.aspx)

· 

· 

SQLProcedureColumns Function.aspx)

· 

· 

SQLProcedures Function.aspx)

· 

· 

SQLPutData Function.aspx)

· 

· 

SQLRowCount Function.aspx)

· 

· 

SQLSetConnectAttr Function.aspx)

· 

· 

SQLSetConnectOption Function.aspx)

· 

· 

SQLSetCursorName Function.aspx)

· 

· 

SQLSetDescField Function.aspx)

· 

· 

SQLSetDescRec Function.aspx)

· 

· 

SQLSetEnvAttr Function.aspx)

· 

· 

SQLSetParam Function.aspx)

· 

· 

SQLSetPos Function.aspx)

· 

· 

SQLSetScrollOptions Function.aspx)

· 

· 

SQLSetStmtAttr Function.aspx)

· 

· 

SQLSetStmtOption Function.aspx)

· 

· 

SQLSpecialColumns Function.aspx)

· 

· 

SQLStatistics Function.aspx)

· 

· 

SQLTablePrivileges Function.aspx)

· 

· 

SQLTables Function.aspx)

· 

· 

SQLTransact Function.aspx)

· 

 

6. 参考

 

 

ADO、OLEDB、ODBC之间的关系图 – 百科学和教育程网_经历分享平台[上学吗经验教程频道].html

java.sql (Java Platform SE 8 ).html

ODBC API Reference.html

OleDbConnection 类 (System.Data.OleDb).html

 

相关文章