透过JDBC修改资料

来源:互联网 发布:mac safari flash 编辑:程序博客网 时间:2024/04/28 02:01

假设有一资料表名称叫people,其栏位结构及资料内容如下
id(栏位型态varchar) name(栏位型态varchar) salary(栏位型态int) 001 王小明 30000 002 陈永年 35000 003 王新国 28000
已经建立好一个Connection con

一、利用SQL语法新增修改删除资料

1.新增一笔资料
新增一笔编号004,姓名刘少奇,薪水31000的资料
String insertstr="insert into people (id,name,salary) values (?,?,?)";
PreparedStatement pstmt=con.prepareStatement(insertstr);
pstmt.setString(1,"004");
pstmt.setString(2,"刘少奇");
pstmt.setInt(3,31000);
pstmt.executeUpdate();

2.修改一笔资料
修改编号001王小明的薪水资料,改成27000
String updatestr="update people set salary=? where id=?";
PreparedStatement pstmt=con.prepareStatement(updatestr);
pstmt.setInt(1,27000);
pstmt.setString(2,"001");
pstmt.executeUpdate();

3.删除一笔资料
删除编号003王新国的资料
String delstr="delete from people where id=?";
PreparedStatement pstmt=con.prepareStatement(delstr);
pstmt.setString(1,"003");
pstmt.executeUpdate();

二、利用ResultSet(免用SQL语法)新增修改删除资料
适用在JDBC2.0的驱动程式,且该驱动程式有实作出以下的方法才可以使用

1.新增一笔资料
新增一笔编号004,姓名刘少奇,薪水31000的资料
Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rs=stmt.executeQuery("select * from people order by id");
rs.moveToInsertRow();
rs.updateString("id","004"); //或是rs.updateString(1,"004);表示第一个栏位
rs.updateString("name","刘少奇");
rs.updateInt("salary",31000);
rs.insertRow();

2.修改一笔资料
修改编号001王小明的薪水资料,改成27000
Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rs=stmt.executeQuery("select * from people order by id");
rs.absolute(1); //将游标移至第一笔王小明的资料
rs.updateInt("salary",27000);
rs.updateRow();

3.删除一笔资料
删除编号003王新国的资料
Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rs=stmt.executeQuery("select * from people order by id");
rs.absolute(3); //将游标移至第三笔王新国的资料
rs.deleteRow();

原创粉丝点击