J2SE知识点摘记-数据库(二)
一、 查询数据
注意sql的内容.
通过ResultSet接口保存全部的查询结果,通过Statement接口中的executeQuery()方法查询.查询之后需要分别取出.通过next()方法找到返回每一行的数据,每一行中各个列的数据需要通过一下方法取得:
取得整型:getInt()
取得字符串:getString()
取得日期:getDate()
取得否点数:getFloat()
注意:java从数据库中将查询信息调入到ResultSet的对象内部,所以使用java程序调出时需要从ResultSet对象中调出,通过getDate()方法调出(查询API可得通过索引号的方式完成数据的操作).
例子:String name=rs.getString(1);
Int age=rs.getInt(2);
Date birthday=rs.getDate(3);
......
二、 PreparedStatement接口完成增加操作
此接口实在实际开发中使用的最广泛的一个操作接口,采用预处理的方式完成.
运用PreparedStatement接口代替Statement接口进行增加内容操作.
使用PreparedStatement声明对象st.Sql语句中VALUES一项中,表示将输入的内容传递到其中,代码中的问号标识未知的输入项.采用PreparedStatement类中的方法设置问号中的内容,其中的1,2,3,4表示该表每行数据的ID行号.
注意:”st=conn.PreparedStatement(sql);rs=st.executeQuery()”与”st=conn.createStatement();rs=st.executeQuery(sql);”.
三、 PreparedStatement接口完成查询
注意关闭数据库放的位置,实在while循环结束后。
四、 模糊查询
关键修改:
添加:String keyWorld=” “;//标识查询的是一个空值
修改:String sql=“Select * FROM Staff WHERE name LIKE ? OR birthday LIKE ?”;
修改:st=setString(1,”%”+keyWorld+”%”);//运用”%”进行匹配
st=setString(2,”%”+keyWorld+”%”);
五、 批处理
首相在Statement接口上定义一个addBatch()方法,此方法可用于加入批处理,之后使用executeBatch()方法进行批处理的操作。
六、 事务处理
增加:(处理之前)conn.setAutoCommit(false);//取消自动提交
增加:(处理完后)conn.commit();
增加:(在catch语句中)conn.rollback();//可代替e.printStackTrace();