写代码之前的工作:
1、加入jdbc驱动包。选中项目,右键“编辑路径来源”(操作如图);
2、开启OracleService和TNSListener服务(如图)。
接下来是代码部分(分六个步骤):
1、加载驱动;
Class.forName("oracle.jdbc.driver.OracleDriver");
2、创建连接;
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORADB", "scott","tiger");
3、创建发送SQL语句的对象:
Statement stmt = conn.createStatement();
4、进行数据库操作;
// 插入数据
int executeUpdate = stmt.executeUpdate("INSERT INTO dept VALUES(50,'人事部门','北京')");
// 修改数据
System.out.println(executeUpdate);
String sql = "UPDATE dept SET LOC='成都' WHERE deptno=50";
int affectedRow = stmt.executeUpdate(sql);
System.out.println("影响的行数为:"+affectedRow);
// 删除数据
String deleteSql = "DELETE FROM dept WHERE deptno=50";
int affectedRow1 = stmt.executeUpdate(deleteSql);
// 查询数据
rs = stmt.executeQuery("SELECT * FROM dept");
5、如果是查询数据,可进一步获得当前记录集中的某一记录的各个字段的值;
re.next();
String loc = rs.getString(2);
6、关闭相关对象。
rs.close();
stmt.close();
con.cloae();
最后,来一段写好的代码(对于dept表的查询)。。。
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL","scott","tiger");
stmt = conn.createStatement();
String sql = "select * from dept";
rs = stmt.executeQuery(sql);
while(rs.next()){
out.println(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getString(3)+"<br >");
}
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
if (rs != null)
rs.close();
if (stmt != null)
stmt.close();
if (conn != null)
conn.close();
} catch (SQLException sqle) {
// TODO: Add catch code
sqle.printStackTrace();
}
}