jdbc操作数据库实例
1.jdbc创建数据库
1.1 前提条件
1.拥有创建和删除表的权限
2.数据库已经启动,且可用
1.2 jdbc创建数据库表的步骤:
导包:导入需要进行数据库编程的 JDBC 类的包。大多数情况下,使用 import java.sql. 就足够了。
注册 JDBC 驱动程序:初始化驱动程序,使之可以与数据库打开通信通道。
获取连接:需要使用 DriverManager.getConnection() 方法创建一个 Connection 对象,它代表与数据库服务器的物理连接。
建数据库:使用类型声明的对象建立并提交一个 建数据库SQL 语句到数据库。
释放资源:手动释放资源,依靠 JVM 垃圾收集器可以明确地回收所有的数据库资源。
创建数据库实例:创建jdbc数据库:
java源码:
packagecom.hejh.day0509;importjava.sql.Connection;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importorg.junit.Test;importcom.hejh.util.JDBCUtil;public classJDBCCreateDatabase {
@Testpublic voidcreateDatabase() {
Connection conn= null;
Statement st= null;
ResultSet rs= null;try{//使用JDBCUtil工具类,获取连接对象(包括注册驱动,工具类已经实现)
conn =JDBCUtil.getConnection();
st=conn.createStatement();
String sql= "create database jdbc character set utf8";int i =st.executeUpdate(sql);
System.out.println("建立数据库成功,影响了:"+i+"行");
}catch(SQLException e) {
e.printStackTrace();
}finally{
JDBCUtil.closeResourse(conn, st, rs);
}
}
}
JDBCUtil工具类源码:
packagecom.hejh.util;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;public classJDBCUtil {final static String driver = "com.mysql.jdbc.Driver";
//在这里要注意,不是具体连接到某个具体的数据库下,是在当前用户下创建JDBC数据库final static String url = "jdbc:mysql://localhost/?useUnicode=true&characterEncoding=UTF-8";final static String user = "root";final static String password = "root";
Connection conn= null;
PreparedStatement ps= null;
Statement st= null;
ResultSet rs= null;/**获取连接*/
public static Connection getConnection() throwsSQLException {
Connection conn= null;try{//注册驱动
Class.forName(driver);//获取连接
conn =DriverManager.getConnection(url, user, password);
}catch(ClassNotFoundException e) {
e.printStackTrace();
}returnconn;
}/**关闭资源closeResourse(conn,st,rs)*/
public static voidcloseResourse(Connection conn,Statement st,ResultSet rs) {try{if(rs!=null) {
rs.close();
}else{
rs= null;
}
}catch(SQLException e) {
e.printStackTrace();
}try{if(st!=null) {
st.close();
}else{
st= null;
}
}catch(SQLException e) {
e.printStackTrace();
}try{if(conn!=null) {
conn.close();
}else{
conn= null;
}
}catch(SQLException e) {
e.printStackTrace();
}
}/**关闭资源closeResourse(conn,ps,rs)*/
public static voidcloseResourse(Connection conn,PreparedStatement ps,ResultSet rs) {try{if(rs!=null) {
rs.close();
}else{
rs= null;
}
}catch(SQLException e) {
e.printStackTrace();
}try{if(ps!=null) {
ps.close();
}else{
ps= null;
}
}catch(SQLException e) {
e.printStackTrace();
}try{if(conn!=null) {
conn.close();
}else{
conn= null;
}
}catch(SQLException e) {
e.printStackTrace();
}
}
}
数据库显示为:
2.jdbc切换数据库
java源码:
packagecom.hejh.day0509;importjava.sql.Connection;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql