在应用中,很多时候会对表的主键用一个自动增涨的数来付值,如Oracle的sequence,插入后又想得到的主键的值。下面介绍一下相关的方法。
1,用Oracle 的returning 语句。
PreparedStatement sta = conn.prepareStatement("INSERT INTO LOGGING VALUES (TESTSEQ.NEXTVAL,SYSDATE)returning id into ? ");
sta.execute();
ResultSet rset = sta.getResultSet();
while(rset.next())
{
int id = rset.getInt(1);
}
2,用JDBC的getGeneratedKeys,返回的是Oracle 的rowid.
PreparedStatement sta = conn.prepareStatement("INSERT INTO TESTTABLE VALUES (TESTSEQ.NEXTVAL,'aaaa')",Statement.RETURN_GENERATED_KEYS);
sta.execute();
System.out.println(sta.getGeneratedKeys());
ResultSet rest = sta.getGeneratedKeys();
rest.next();
//oracle rowid
System.out.println(rest.getString(1));
分享到:
相关推荐
本篇文章将详细讲解如何通过JDBC在Java中执行插入操作并获取自增主键。 首先,确保你已经在项目中引入了MySQL的JDBC驱动。这通常通过在`.classpath`文件中添加对应的JAR依赖或在构建工具(如Maven或Gradle)的配置...
它们在数据插入和更新时自动执行,防止不符合规则的数据进入数据库。 第十讲:PL/SQL编程 PL/SQL是Oracle的编程语言,结合了SQL查询功能和过程式编程元素。它可以编写存储过程、函数、触发器等,用于处理复杂的业务...
在Oracle中,插入新记录到表中使用INSERT语句。例如,如果我们有一个名为`employees`的表,包含`id`,`name`和`salary`字段,我们可以这样插入一条新记录: ```sql INSERT INTO employees (id, name, salary) ...
### JDBC操纵Oracle数据库中的BLOB字段 在现代的数据库应用中,处理二进制大对象(BLOB)数据是一项常见的需求,特别是在存储图像、音频或视频等多媒体内容时。本文将深入探讨如何使用Java Database Connectivity ...
Oracle数据库课程设计报告的核心内容是基于Oracle数据库管理系统构建一个管理系统的全过程,涵盖了需求分析、数据库设计、详细设计和测试等多个阶段。以下是对这些关键知识点的详细说明: 1. **需求分析**:在设计...
16.1部分可能涵盖了JDBC的基本概念,如驱动管理、数据库连接、执行SQL语句以及结果集的处理。16.2则可能深入讲解了批处理、连接池、预编译语句等高级特性,这些都是在大规模应用中提高性能和优化资源的关键。 "T1_...
在Java编程中,与Oracle数据库的交互是常见的需求。Oracle是一种功能强大的关系型数据库管理系统,广泛应用于企业级应用。要让Java程序连接并操作Oracle数据库,你需要了解以下几个关键知识点: 1. **创建Oracle...
这可能包括创建表、定义字段、设置约束(如主键、外键)、插入数据、更新数据以及查询数据的语句。在Oracle数据库中,DDL(Data Definition Language)用于定义数据库结构,如CREATE TABLE,DML(Data Manipulation ...
3. 插入日期:使用`INSERT INTO`语句配合`TO_DATE`函数,如`INSERT INTO test VALUES (TO_DATE('2010-08-08 14:10:20', 'yyyy-MM-dd HH24:mi:ss'));` 4. 约束添加:`ALTER TABLE`语句可添加主键和外键约束,如`...
这份"(Oracle数据库管理)O数据库培训教材"涵盖了从基础到进阶的Oracle知识,包括数据库概念、Oracle简介、用户与权限管理、数据类型、SQL语句、表空间、表、函数、约束以及各种查询技术,同时也涉及到JDBC(Java ...
JDBC是Java中与数据库交互的接口,允许程序通过编写Java代码执行SQL语句。JDBC编程包括加载驱动、建立连接、创建Statement或PreparedStatement对象、执行SQL和处理结果集等步骤。JDBC使得Java开发者能够灵活地处理...
- 增加留言:使用`Statement`或`PreparedStatement`对象执行`INSERT INTO`语句,将用户输入的数据插入到`MESSAGES`表。 - 删除留言:使用`DELETE FROM`语句,通常根据留言ID进行删除。 - 修改留言:使用`UPDATE`...
在 Oracle 数据库中,我们可以使用 `INSERT` 语句将 XML 数据插入到 `resumes2` 表中: ```sql INSERT INTO resumes2 (employee_id, resume) VALUES (1, XMLType('<resume><name>John</name><age>30</age></resume>...
在Java的JDBC4.0版本中,Oracle数据库的BLOB类型数据操作变得更加方便。BLOB(Binary Large Object)是用来存储大对象,如图像、音频或视频文件等二进制数据的数据库字段类型。以下是对使用JDBC4.0操作Oracle中BLOB...
理解数据库的基本概念,如表、字段、记录、主键和外键,是数据库入门的关键。此外,SQL(结构化查询语言)是用于操作数据库的语言,包括创建、修改和查询数据。 SQL语句主要有以下几种类型: 1. DDL(Data ...
6. **触发器**:触发器是在特定数据库事件(如INSERT、UPDATE、DELETE)发生时自动执行的程序,用于实施业务规则或维护数据一致性。 7. **事务管理**:在Oracle中,事务是数据库操作的基本单元,确保数据的一致性和...
在这个项目中,JavaBean包含了对Oracle数据库的操作,如连接数据库、执行SQL语句(INSERT, DELETE, UPDATE, SELECT)等,实现emp表的数据操作。 3. **Oracle数据库**:Oracle是一种关系型数据库管理系统,广泛应用...
- 创建:`session.save(entity)`,Hibernate会自动执行INSERT语句。 - 更新:首先,通过ID获取实体,然后修改属性,最后`session.update(entity)`。 - 删除:`session.delete(entity)`,Hibernate会执行DELETE...
DAO类包含连接数据库、执行SQL语句以及处理结果集的方法。在Struts2 Action类中,可以调用这些DAO方法来完成实际的数据库操作。 5. **实体类(Entity)**:为了映射数据库中的`users`表,需要创建一个对应的Java...