50,336
社区成员




public class JDBCDemo1 {
public static void main(String[] args) {
try {
/*
* 连接数据库流程:
* 1:加载驱动
* 2:建立连接
* 3:执行SQL
* 4:处理结果集
*/
//1
/*
* 不同的数据库,中间的字符串内容不同
* oracle.jdbc.driver.OracleDriver
* com.mysql.jdbc.Driver
* 出现下列异常:
* java.lang.ClassNotFoundException:
* oracle.jdbc.driver.OracleDriver
*
* 说明项目中没有导入oracle的驱动jar包。
*/
Class.forName("oracle.jdbc.driver.OracleDriver");
//2
/*
* 建立连接时,不同的数据库,连接地址的格式不完全
* 一样
* DriverManager的静态方法getConnection用来连接
* 数据库,需要三个参数:
* 1:数据库的url
* 2:数据库用户名(openlab)
* 3:数据库密码(open123)
*
* oracle的url格式
* 地址:端口:数据库实例名
* jdbc:oracle:thin:@host:port:sid
*/
//java.sql.Connection
Connection conn =
DriverManager.getConnection(
"jdbc:oracle:thin:@192.168.176.238:1521:orcl",
"openlab",
"open123");
//3 java.sql.Statement
Statement state = conn.createStatement();
/*
* Statement用来执行SQL语句
* Statement提供了3个比较常用的方法:
* 1:
* ResultSet executeQuery(String sql)
* 该方法专门用来执行DQL语句(SELECT).并将查询结果
* 集返回。
*
* 2:
* int executeUpdate(String sql)
* 该方法专门用来执行DML语句(增删改)。返回值为执行
* 该语句后影响了数据库的记录数。
*
* 3:
* boolean execute(String sql)
* 该方法可以执行任何SQL语句。通常使用该方法来执行
* DDL操作。返回值:若执行语句后有查询结果集返回true
* 若执行SQL失败(例如表已经存在,SQL语句写错了等),
* 该方法会抛出SQLException
*/
//查询emp表中每个员工的名字,工资,部门,职位
/*
* SELECT ename,sal,deptno,job
* FROM emp
*/
String sql = "SELECT ename,sal,deptno,job " +
"FROM emp";
//打桩
System.out.println(sql);
//java.sql.ResultSet
/*
* ResultSet表示查询的结果集
* 常用方法:
* 1:boolean next()
* 该方法会让ResultSet移动到下一条数据。若结果集
* 中有下一条数据那么返回true,并移动。若没有则返回
* false.
* 2:提供了若干get方法
* String getString(String fieldName)
* int getInt(String fieldName)
* ...
* 根据给定的字段名,调用相应类型的get方法,来获取
* 该字段的值
*
* 3:还提供了get方法
* String getString(int index)
* int getInt(int index)
* ...
* 根据给定的字段的索引值,调用相应类型的get方法,
* 来获取该字段的值
* 第一个字段的索引值是1
*/
ResultSet rs = state.executeQuery(sql);
while(rs.next()){
String ename = rs.getString(1);
int salary = rs.getInt(2);
int deptno = rs.getInt(3);
String job = rs.getString(4);
System.out.println(
ename+","+salary+","+deptno+","+job
);
}
rs.close();
state.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
很标准的...还有一个...你有没有添加jar包....