当前位置:  技术问答>java相关

如何获得刚存入的一条数据的ID?

    来源: 互联网  发布时间:2015-02-08

    本文导语:  我在oracle里有一个表,字段sys_unid为主键,唯一,而且是自动增长的,我的触发器是这样写的: declare next_forum_id number; BEGIN     select g_forum_id.NEXTVAL     into next_forum_id     from dual;     :new.sys_unid := next_forum_i...

我在oracle里有一个表,字段sys_unid为主键,唯一,而且是自动增长的,我的触发器是这样写的:
declare
next_forum_id number;
BEGIN
    select g_forum_id.NEXTVAL
    into next_forum_id
    from dual;
    :new.sys_unid := next_forum_id;
END;

其中g_forum_id为序列,自动增长1。
但现在每次往数据库里加数据它不是加1,而是不知加了几,反正是增长了。

现在我在jsp中加了一条数据后,想马上获得该条数据的唯一标识sys_unid.该怎么获得?

|
看下我写的吧,对你绝对有帮助,别忘了加分啊:
create table person(id number(12,0) not null primary key,name char(10) not null,sex char(3)  not null);
create sequence id;

CREATE OR REPLACE PROCEDURE addperson(p_name in varchar2,p_sex in varchar2,idReturn out number) IS
temp_id number;
BEGIN
select id.nextval into temp_id from dual;
insert into person(id,name,sex) values(temp_id,p_name,p_sex);
idReturn:=temp_id;
END addperson;

import java.sql.*;
import java.lang.*;
import oracle.jdbc.driver.*;
public class OracleDB2
{
  public static void main(String[] args)
  {
    ResultSet rs=null;
    CallableStatement call=null;
    try {
           DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
           Connection conn =
DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.115:1521:OracleDB","scott","tiger");
    call=conn.prepareCall("{ call addperson (?,?,?) }");
    call.registerOutParameter(3,java.sql.Types.INTEGER);
    call.setString(1, "小路");
    call.setString(2, "女");
    call.execute();

    int id=call.getInt(3);

    Statement stmt=conn.createStatement();
    String sql="select * from person where id="+id;
    rs=stmt.executeQuery(sql);
   }catch(Exception e) 
{System.out.println("error:"+e);}
    try{
// 获得数据结果集合
    ResultSetMetaData rmeta = rs.getMetaData();
// 确定数据集的列数,亦字段数
int numColumns=rmeta.getColumnCount();
// 输出每一个数据值
for(int i=1;i

    
 
 

您可能感兴趣的文章:

  • 怎样从表单数据中获得数值型变量(好像所有数据都是字符串型的)?
  • 如何获得刚插入数据的id递增值
  • GTK list 中的数据如何获得?
  • netfilter里如何获得TCP包的数据?
  • 如何在jsp网页中,获得orecle数据库中一个序列的当前值
  • 使用tcp协议发送数据, 如果获得系统底层将包发到客户端之间的耗时?
  • 如何获得机器上已经注册的所有ODBC数据源?
  • 如何最快地将获得的数据写入文件 ?
  • 解析mysql中如何获得数据库的大小
  • 请问用哈希表存储数据,那我怎么获得键的名字,而不是键的值,谢谢,在线等候
  • sql server数据库有没有专门的jdbc驱动程序,若有,请教怎样获得?
  • 请问用c/c++如何获得html页面中用户提交的数据(如表单,谢谢! (luoluobobo1 )
  • 从tablemodel里面检测到jtable一格的数据有问题如何让该格获得焦点继续编辑?
  • 从netfilter里注册的函数获得的sk_buff的数据包如何重组?
  • 获得SQL数据库信息的代码
  • 如何在directfb中获得png图像解码后的数据
  • 如何获得数据库表中的所有字段?
  • 数据库中日期型字段,如何在 java 中分别获得其中的年月日
  • php表单请求获得数据求和示例
  • jquery获得表单所有数据的实例分享
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 用sysconf(_SC_CLK_TCK)可以获得时钟的hz,还有什么方法可以获得内核时钟的hz
  • 数据库 iis7站长之家
  • 调用DOM对象的focus使文本框获得焦点
  • 获得客户端的显示分辨率
  • 怎样一个一个的获得指定目录下的文件名.
  • linux下什么语言获得参数是~1
  • 求救:关于在BSD下如何通过文件路径使用核内函数获得文件句柄?
  • jQuery获得内容和属性示例代码
  • jQuery获得内容与属性方法
  • mysql获得60天前unix时间思路及代码
  • 用javamail怎么获得邮件内容?
  • 如何获得上一组件的的位置信息?
  • 请问怎样获得当前所在目录和清屏?
  • 在JavaBean或Servlet如何获得URL地址?
  • 如何获得系统支持字体?
  • 按钮如何获得焦点并按回车触发?
  • 如何在UNIX下获得MAC地址?
  • 如何获得iptables的输出信息??????有挑战性阿!!!
  • 我的redhat 可以自动获得Ip地址 却无法浏览网页 !
  • 获得usb设备的Serial Number


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3