import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.bjsxt.util.BjsxtUtil;
//查询
public class HelloJdbc3 {
//jdbc:java数据库连接
public static void main(String[] args) {
//提取参信息--方便以后进行封装
String classname = "oracle.jdbc.OracleDriver";
String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";
String username = "scott";
String userpwd ="1234";
//声明连接
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
try {
//1:加载驱动
Class.forName(classname);
//2:创建连接
connection = DriverManager.getConnection(url,username,userpwd);
//3:创建sql命令发送器
statement = connection.createStatement();
//4:发送sql,获取结果 ,主键可以用序列自动生成,时间获取当前的时间
//sql
//String sql = "select * from emp where ename = 'SCOTT' ";
String sqlall = "select * from emp ";
//结果集
resultSet = statement.executeQuery(sqlall);
//5:处理结果集 resultSet.next():如果resultSet里面有值就返回ture
//遍历结果集用while
while (resultSet.next()) {
int empno = resultSet.getInt("empno");//number(m)
String ename = resultSet.getString("ename");//varchar2(),varchar()
String job = resultSet.getString("job");
int mgr = resultSet.getInt("mgr");
Date date = resultSet.getDate("hiredate");//date
double sal = resultSet.getDouble("sal");//number(m,n)
double comm = resultSet.getDouble("comm");
int deptno = resultSet.getInt("deptno");
System.out.println("HelloJdbc3.main(用户信息):"+empno+" "+ename+" "+job+" "+mgr+" "+date+" "+sal+" "+comm+" "+deptno);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}finally{
//6:关闭连接
//判断是否为空
if(resultSet!=null){
try {
resultSet.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(statement!=null){
try {
statement.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(connection!=null){
try {
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
记住:如果不指定插入数据库的id,对于oracle可以使用序列来指定
序列的格式:序列对象.nextval ==就可以获取序列的值,不是nextval方法,而是属性
- String sql = “insert into emp
values(seq_emp_empno.nextval,’wangwu’,’CLERK’,7788,
to_date(‘”+BjsxtUtil.nowdatestr()+”’,’YYYY-MM-DD’),’3000’,’1000’,20)
“;