当前位置 : 首页> Java教程 > Java程序数据库之插入记录

Java程序数据库之插入记录

时间:2016-09-06 18:20   已访问:301次

关于Java程序数据库插入记录方面的知识点主要有三个,也就是三种插入方案,分别为Statement、ResultSet、PrepareStatement等等。下面就是具体的介绍,希望大家可以学好愉快,学的顺利。

插入数据表记录有3种方案

第一:使用ResultSet对象

使用ResultSet对象的方法moveToInsertRow()将数据表游标移到插入位置,输入数据后,用方法insertRow()插入记录。例如,以下示意代码:

String sql= “select * from ksInfo”;//生成SQL语句

ResultSet rs = stmt.executeQuery(sql);//获取数据表结果集

rs.moveToInsertRow();//将数据表游标移到插入记录位置

rs.updateString(1,’200701’);//向考号字段填入数据

rs.updateString(2,’张大卫’);//向名字字段填入数据

rs.updateInt(3,534);//向成绩字段填入数据

rs.updateString(4,’上海欧阳路218弄4-1202’);//向地址字段填入数据

rs.updateString(5,’’);//向简历字段填入数据

try{rs.insertRow();}catch(Exception e){};//完成插入

第二:使用Statement对象

实现插入数据表记录的SQL语句的语法是:

insert into 表名(字段名1,字段名2,……)value (字段值1,字段值2,……)

例如:

insert into ksInfo(考号,姓名,成绩,地址,简历)value(‘200701’,’张大卫’534,’上海欧阳路218弄4-1202’,’’)

实现同样功能的Java程序代码是:

sql = “insert intoksIno(考号,姓名,成绩,地址,简历)”;

sql= = sq1+ “value(‘”+txtNo.getTxt()+’,’”+txtName.getText(0”’,”;

sql = sql+txtScore.getText();

sql=sql+”,’”+txtAddr.getText()+”’,’”+txtResume.getText()+”’)”;

stmt.executeUpdate(sql);

第三:使用PrepareStatement对象

与使用Statement对象的方法类似,只是创建SQL语句时暂时用参数?表示值,然后由SQL语句对象生成PrepareStatement对象,插入时通过设定实际参数,实现记录的更新。示意代码如下:

sql = “insert into ksInfo(考号,姓名,成绩,地址,简历)value (?,?,?,?,’’)”;

PrepareStatement pStmt = connect.prepareStatement(sql);

pStmt.setString(1,’200701’);//向考号字段填入数据

pStmt. setString (2,’张大卫’);//向名字字段填入数据

pStmt.setInt(3,534);//向成绩字段填入数据

pStmt. setString (4,’上海欧阳路218弄4-1202’);//向地址字段填入数据

pStmt. setString (5,’’);//向简历字段填入数据

pStmt.executeUpdate();

Java中向数据库中插入记录并返回该记录的id的值

用户注册是向表中插入用户的基本信息并返回该记录的id值

例子

public long regist(Cuser cuser) {

  Connection con=Cconnection.getconnection();//Cconnection是的到数据库连接的类

  PreparedStatement ps=null;

  ResultSet rs=null;

  long id = 0;//存放数据库返回的用户注册过后的id

  try {

   ps=con.prepareStatement(Csqlutil.REGIST,Statement.RETURN_GENERATED_KEYS);//将Csqlutil.REGIST改为sql语句

   ps.setString(1, cuser.getUsername());

   ps.setString(2, cuser.getName());

   ps.setString(3, cuser.getPwd());

   ps.setInt(4, cuser.getAge());

   ps.setString(5, cuser.getSex());

   ps.setString(6, cuser.getPhone());

   ps.executeUpdate();

   rs=ps.getGeneratedKeys();//这一句代码就是得到插入的记录的id

   while(rs.next()){

    id=rs.getLong(1);

   }

  } catch (Exception e) {

   // TODO Auto-generated catch block

   e.printStackTrace();

  }finally{

   try {

    rs.close();

    ps.close();

    con.close();

   } catch (SQLException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

   }

  }

  return id;

 }


推荐内容