JDBC介绍
它是一个接口,它提供了如何连接数据库的步骤,所谓的JDBC驱动实际上就是JDBC的不同实现,每一个数据库厂商都写了这个实现
JDBC应用程序的基本步骤:
1.注册驱动 Class.forName(driverName);
2.建立数据库连接 Connection con = DirverManager.getConnection(String url, String user, String password);
3.创建数据库操作对象 Statement stmt = con.createStatement();
4.执行SQL语句 stmt.executeQuery(String sql)|stmt.executeUpdate(String sql)|stmt.execute(String sql)
5.处理结果集 ResultSet rs = stmt.executeQuery(String sql); rs.next() ; rs.getXXX();
6.关闭JDBC对象 con.close();stmt.close();rs.close();
DriverManager的工作原理:
DriverManager利用连接字符串来测试已经注册的驱动程序是否可用
Statement 用来执行静态sql,所谓的静态sql的意思是传递的sql语句是不变的.
PreparedStatement 用来执行动态sql,所谓的动态sql的意思是传递的sql语句是可变的.
如:
String sql = "insert into employee(id,name,salary,birthday) values(?,?,?,?)"; //这个sql是预编译sql语句?等待传值
PreparedStatement psmt = con.prepareStatement(sql);
psmt.setInt(1,1001); //第一个位置设置为整数1001
psmt.setString(2,"zhangsan"); //第二个位置设置为字符串zhangsan
pstm.setDouble(3,3465.00); //第三个位置设置为double的值3465.00
pstm.setDate(4,new java.sql.Date(1985,1,21)); //第四个位置设置一个时间类型的
pstm.executeUpdate();
可以操作和访问的元数据
元数据:
对数据库对结果集进行描述的一些数据
数据库的元数据用DatabaseMetaData描述,它包括数据库的整体综合信息.
结果集的元数据用ResultSetMetaData描述,它包括结果集的信息.
如:
Connection con = DirverManager.getConnection(url, user, password);
DatabaseMetaData dbms = con.getMetaData();
dbms.getDrivateVersion();
ResultSet rs = stmt.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
rsmd.getColumnCount();
rsmd.getColumnName(int item);
它是一个接口,它提供了如何连接数据库的步骤,所谓的JDBC驱动实际上就是JDBC的不同实现,每一个数据库厂商都写了这个实现
JDBC应用程序的基本步骤:
1.注册驱动 Class.forName(driverName);
2.建立数据库连接 Connection con = DirverManager.getConnection(String url, String user, String password);
3.创建数据库操作对象 Statement stmt = con.createStatement();
4.执行SQL语句 stmt.executeQuery(String sql)|stmt.executeUpdate(String sql)|stmt.execute(String sql)
5.处理结果集 ResultSet rs = stmt.executeQuery(String sql); rs.next() ; rs.getXXX();
6.关闭JDBC对象 con.close();stmt.close();rs.close();
DriverManager的工作原理:
DriverManager利用连接字符串来测试已经注册的驱动程序是否可用
Statement 用来执行静态sql,所谓的静态sql的意思是传递的sql语句是不变的.
PreparedStatement 用来执行动态sql,所谓的动态sql的意思是传递的sql语句是可变的.
如:
String sql = "insert into employee(id,name,salary,birthday) values(?,?,?,?)"; //这个sql是预编译sql语句?等待传值
PreparedStatement psmt = con.prepareStatement(sql);
psmt.setInt(1,1001); //第一个位置设置为整数1001
psmt.setString(2,"zhangsan"); //第二个位置设置为字符串zhangsan
pstm.setDouble(3,3465.00); //第三个位置设置为double的值3465.00
pstm.setDate(4,new java.sql.Date(1985,1,21)); //第四个位置设置一个时间类型的
pstm.executeUpdate();
可以操作和访问的元数据
元数据:
对数据库对结果集进行描述的一些数据
数据库的元数据用DatabaseMetaData描述,它包括数据库的整体综合信息.
结果集的元数据用ResultSetMetaData描述,它包括结果集的信息.
如:
Connection con = DirverManager.getConnection(url, user, password);
DatabaseMetaData dbms = con.getMetaData();
dbms.getDrivateVersion();
ResultSet rs = stmt.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
rsmd.getColumnCount();
rsmd.getColumnName(int item);