Savepoints 只能用于局部事物,全局事物不支持
Connection.setSavepoint 返回一个java.sql.Savepoint对象
getSavepointName 用于有名字的, getSavepointId用于没名字的,互换会报错
Connection.rollback(Savepoint svpt) 返回到回滚点Connection.releaseSavepoint(Savepoint svpt) 释放掉
一旦commit或rollback,这个事物中的所有回滚点都自动释放
rollback到某个回滚点后,这个回滚点之后的那些将自动释放
获取自动生成的key值功能,只支持insert语句
/** SQL statements for creating an ORDERS table and a sequence for generating the * ORDER_ID. * * CREATE TABLE ORDERS (ORDER_ID NUMBER, CUSTOMER_ID NUMBER, ISBN NUMBER, * DESCRIPTION NCHAR(5)) * * CREATE SEQUENCE SEQ01 INCREMENT BY 1 START WITH 1000 */ // Create a PreparedStatement for inserting a row into the ORDERS table. OraclePreparedStatement pstmt = (OraclePreparedStatement) conn.prepareStatement("INSERT INTO ORDERS (ORDER_ID, CUSTOMER_ID, ISBN, DESCRIPTION) VALUES (SEQ01.NEXTVAL, 101,//用序列自动生成主键 966431502, ?)", cols); String s = new String(c); pstmt.setNString(1, s); pstmt.executeUpdate(); ResultSet rset = pstmt.getGeneratedKeys();//获得自动生成的值,返回结果集对象
但批更新时不可用
返回的ResultSet只能用序号得到里面的内容
如果显示指明了Statement.RETURN_GENERATED_KEYS 标志,则要用"rowid"列名访问
Oracle只支持 HOLD_CURSORS_OVER_COMMIT模式
从数据库中取出的数据到底要用什么java类型表示呢?
1.通常来说,尽量使用java标准类型
2.要保留浮点的准确值,用oracle.sql.NUMBER,不要用java.lang.Double
3.为了提高性能时,用oracle.sql.NUMBER,不要用java.math.BigDecimal
4.JDK6以后,用java.sql.Date和java.sql.Timestamp表时间
5.Oracle特有的就用Oracle的,符合规范的就用java的
sql里的null会转为java的null,所以不要使用原始类型获取null值,会变成0
PreparedStatement pstmt = conn.prepareStatement( "SELECT * FROM EMPLOYEES WHERE COMMISSION_PCT = ?"); //这里无法处理null的传入,会报错 pstmt.setNull(1, java.sql.Types.VARCHAR);
ResultSet rset = stmt.executeQuery("SELECT employees.department_id, department.department_id FROM employees, department"); rset.getInt("employees.department_id");//这个不能用全名,或者用序号,或者起个别名
getBoolean会在底层等于0时返回false,其他值都返回true
void setNull(int parameterIndex, int sqlType)不能用于REF, ARRAY, or STRUCT
void setNull(int parameterIndex, int sqlType, String sql_type_name) 这个可以
相关推荐
Oracle Call Interface(OCI)是Oracle公司提供的一个C语言编程接口,允许开发者用C或C++编写能够直接操作Oracle数据库的应用程序。OCI提供了全面的功能,包括SQL执行、事务处理、游标管理、数据类型映射以及高级...
Navicat Premium是一款强大的数据库管理工具,专为多种数据库系统设计,...总的来说,Navicat Premium 12.1.13-Mac版是一个强大且全面的数据库管理解决方案,尤其适合那些需要跨平台、多数据库管理的开发者和管理员。
2. **反射调用**:对于 `weblogic.jdbc.wrapper.Clob_oracle_sql_CLOB` 类型的对象,使用 Java 反射机制调用 `getVendorObj()` 方法,该方法返回一个 `oracle.sql.CLOB` 类型的对象。 3. **CLOB 数据读取**:无论是...
Oracle Database 12.1.0.1 JDBC Driver是一款用于Java应用程序与Oracle数据库之间通信的驱动程序,它基于Java Database Connectivity (JDBC) API。JDBC是Java平台上的标准接口,允许开发者用Java语言访问各种类型的...
import oracle.jdbc.pool.OracleDataSource; public class UCPExample { public static void main(String[] args) { OracleDataSource ods = new OracleDataSource(); ods.setURL("jdbc:oracle:thin:@//hostname...
oracle-instantclient12.1-jdbc-12.1.0.2.0-1.x86_64.rpm
ojdbc6.jar ojdbc6_g.jar ojdbc6dms.jar ojdbc6dms_g.jar ojdbc7.jar ojdbc7_g.jar ojdbc7dms.jar ojdbc7dms_g.jar ons.jar orai18n.jar simplefan.jar ucp.jar xdb6.jar 文件合集
标题中的"jdbc--drivers.zip_ jdbc oracle_JDBC ORACLE_oracle"表明这是一个关于JDBC驱动程序的压缩包,特别关注的是Oracle数据库的JDBC驱动。JDBC,全称Java Database Connectivity,是Java语言中用于与各种数据库...
Oracle_10g_10.2.0.4_JDBC_ojdbc14.jar 是Oracle数据库的一个重要组件,它是Oracle JDBC驱动程序的一部分。JDBC(Java Database Connectivity)是Java编程语言中用于与各种数据库交互的一套标准API。ojdbc14.jar ...
"Oracle_11g_JDBC_ojdbc6.rar"这个压缩包包含了用于与Oracle 11g数据库交互的JDBC驱动,具体为`ojdbc6.jar`文件,这是Oracle为Java 6及更高版本提供的驱动程序。 在Java应用中,我们通常使用`Class.forName()`方法...
这个驱动类是`oracle.jdbc.driver.OracleDriver`。在Java代码中,我们可以通过以下方式注册驱动: ```java Class.forName("oracle.jdbc.driver.OracleDriver"); ``` 接着,我们通过`DriverManager.getConnection()...
标题和描述中提到的"MySQL_for_JDBC"、"Oracle9i_for_JDBC"、"SQL_2000_for_JDBC"以及"SQL_2005_for_JDBC"都是针对不同数据库系统的Java JDBC驱动程序。JDBC(Java Database Connectivity)是Java编程语言中的一个...
1. "instantclient-basic-windows.x64-12.1.0.2.0.zip":这是Oracle Instant Client的基础组件,包含oci.dll、sqlplus.exe等核心库和工具,使得开发者可以编写连接Oracle数据库的应用程序,而无需安装完整的Oracle...
标题中的“Jdbc.zip_JDBC程序_oracle_oracle jdbc”表明这是一个关于使用Java数据库连接(JDBC)与Oracle数据库交互的程序示例。在描述中提到,“一段Jdbc连Oracle的程序,并实现数据查询”,这暗示我们将探讨如何...
Oracle JDBC驱动包是Oracle数据库与Java应用程序之间进行通信的关键组件,它使得Java程序员能够通过编写Java代码来操作Oracle数据库。标题中的"ojdbc6"指的是Oracle JDBC驱动的一个特定版本,适用于Java SE 6环境。...
2. **DataSource接口**: Oracle JDBC驱动支持使用`javax.sql.DataSource`接口来管理数据库连接池,这能提高性能并优化资源使用。通过配置数据源,可以在应用服务器中实现连接池的管理。 3. **JDBC URL**: Oracle ...
这通常通过`Class.forName()`方法完成,例如:`Class.forName("oracle.jdbc.driver.OracleDriver")`。 2. **建立数据库连接**:使用`DriverManager.getConnection()`方法,提供数据库URL、用户名和密码来创建数据库...
oracle.jdbc.Const.class oracle.jdbc.OracleCallableStatement.class oracle.jdbc.OracleConnection.class oracle.jdbc.OracleConnectionWrapper.class oracle.jdbc.OracleDatabaseMetaData.class oracle.jdbc....
64-bit ODAC 12c Release 4 (12.1.0.2.4) for Windows x64 [Released October 5, 2015] Download ODAC121024_x64.zip - 287 MB (301,348,751 bytes) ... 64-bit Oracle Instant Client 12.1.0.2.0