转自微博:http://www.cnblogs.com/centor/p/6142775.html
工具:eclipse
MySQL5.6
MySQL连接驱动:mysql-connector-java-5.1.27.jar(链接: https://pan.baidu.com/s/1MmFZ9Hve6rV0tlryM3raeA 密码: q74m)
加载驱动:
1. 在工程目录中创建lib文件夹,将下载好的JDBC放到该文件夹下,如下图所示:

2. 右键工程名,在java build path中的Libraries分页中选择Add JARs...,选择刚才添加的JDBC,如下图:

数据包准备:
在数据库sqltestdb中创建如下数据表emp:
1CREATE TABLE emp( 2 empno INT(4) PRIMARY KEY, 3 ename VARCHAR(10), 4 job VARCHAR(9), 5 hiredate DATE, 6 sal FLOAT(7,2) 7) ;
添加数据:

连接数据库并读取数据:
数据库名称:sqltestdb
数据包名称:emp
端口号:3306
用户名:root
密码:root
1 1 package sqldemo; 2 2 3 3 import java.sql.Connection; 4 4 import java.sql.DriverManager; 5 5 import java.sql.ResultSet; 6 6 import java.sql.SQLException; 7 7 import java.sql.Statement; 8 8 9 9 public class main { 1010 1111 public static void main(String[] args) { 1212 //声明Connection对象 1313 Connection con; 1414 //驱动程序名 1515 String driver = "com.mysql.jdbc.Driver"; 1616 //URL指向要访问的数据库名mydata 1717 String url = "jdbc:mysql://localhost:3306/sqltestdb"; 1818 //MySQL配置时的用户名 1919 String user = "root"; 2020 //MySQL配置时的密码 2121 String password = "123456"; 2222 //遍历查询结果集 2323 try { 2424 //加载驱动程序 2525 Class.forName(driver); 2626 //1.getConnection()方法,连接MySQL数据库!! 2727 con = DriverManager.getConnection(url,user,password); 2828 if(!con.isClosed()) 2929 System.out.println("Succeeded connecting to the Database!"); 3030 //2.创建statement类对象,用来执行SQL语句!! 3131 Statement statement = con.createStatement(); 3232 //要执行的SQL语句 3333 String sql = "select * from emp"; 3434 //3.ResultSet类,用来存放获取的结果集!! 3535 ResultSet rs = statement.executeQuery(sql); 3636 System.out.println("-----------------"); 3737 System.out.println("执行结果如下所示:"); 3838 System.out.println("-----------------"); 3939 System.out.println("姓名" + "\t" + "职称"); 4040 System.out.println("-----------------"); 4141 4242 String job = null; 4343 String id = null; 4444 while(rs.next()){ 4545 //获取stuname这列数据 4646 job = rs.getString("job"); 4747 //获取stuid这列数据 4848 id = rs.getString("ename"); 4949 5050 //输出结果 5151 System.out.println(id + "\t" + job); 5252 } 5353 rs.close(); 5454 con.close(); 5555 } catch(ClassNotFoundException e) { 5656 //数据库驱动类异常处理 5757 System.out.println("Sorry,can`t find the Driver!"); 5858 e.printStackTrace(); 5959 } catch(SQLException e) { 6060 //数据库连接失败异常处理 6161 e.printStackTrace(); 6262 }catch (Exception e) { 6363 // TODO: handle exception 6464 e.printStackTrace(); 6565 }finally{ 6666 System.out.println("数据库数据成功获取!!"); 6767 } 6868 } 6969 7070 }
运行结果:

增加、删除和修改数据:
增加数据:
1String name; 2String id; 3 4PreparedStatement psql; 5ResultSet res; 6//预处理添加数据,其中有两个参数--“?” 7psql = con.prepareStatement("insert into emp (empno,ename,job,hiredate,sal) " 8 + "values(?,?,?,?,?)"); 9psql.setInt(1, 3212); //设置参数1,创建id为3212的数据 10psql.setString(2, "王刚"); //设置参数2,name 为王刚 11psql.setString(3, "总裁"); 12 13DateFormat dateFormat2 = new SimpleDateFormat("yyyy-MM-dd"); 14Date myDate2 = dateFormat2.parse("2010-09-13"); 15psql.setDate(4,new java.sql.Date(myDate2.getTime())); 16psql.setFloat(5, (float) 2000.3); 17psql.executeUpdate(); //执行更新

更新数据:
1 PreparedStatement psql; 2//预处理更新(修改)数据,将王刚的sal改为5000.0 3psql = con.prepareStatement("update emp set sal = ? where ename = ?"); 4psql.setFloat(1,(float) 5000.0); 5psql.setString(2,"王刚"); 6psql.executeUpdate();

删除数据:
1PreparedStatement psql; 2//预处理删除数据 3psql = con.prepareStatement("delete from emp where sal > ?"); 4psql.setFloat(1, 4500); 5psql.executeUpdate(); 6psql.close();
