二、JAVA通过JDBC连接mysql数据库(操作)

    昨天时间限制只是写了如何连接数据库,连接数据库的目的无非就是查询、修改数据,仅仅连接上还是毫无意义的。

对于数据哭的操作就要用到Statement接口(java.sql.Statement)主要方法

int executeUpdate(String sql)throws SQLException 更新数据库
ResultSet executeQuery(String sql)throws SQLException 查询返回ResultSet结果集

代码演示
 1 import java.sql.Connection;
 2 import java.sql.DriverManager;
 3 import java.sql.ResultSet;
 4 import java.sql.Statement;
 5 
 6 public class MysqlDemo {
 7 
 8     public static final String DBDRIVER = "org.gjt.mm.mysql.Driver"; //驱动路径
 9     public static final String DBURL = "jdbc:mysql://localhost:3306/demo";//数据库路径
10     public static final String USER = "root";//用户名
11     public static final String PASSWD = "changeme";//密码
12     public static final String SQL = "INSERT INTO rj144 (id,name,sex,tel)VALUES(123456,‘zhangsan‘,‘m‘,‘123456789‘)";//待执行的sql语句
13     public static void main(String[] args) throws Exception{
14         // TODO Auto-generated method stub
15         int count;                                 //记录sql语句影响的行数
16         Connection con = null;                         //数据库连接接口
17         Statement stmt = null;                        //数据库操作接口
18         Class.forName(DBDRIVER);                    //加载驱动
19         con = DriverManager.getConnection(DBURL,USER,PASSWD);//连接数据库
20         stmt = con.createStatement();                    
21         count = stmt.executeUpdate(SQL);                                //执行sql语句!并将受影响的行数返回给变量count
22         stmt.close();                         //关闭操作
23         con.close();                          //关闭数据库
24         System.out.println(count);
25 
26     }
27 
28 }

运行后输出1,说明有1行数据受到影响,即正确的执行了sql语句。

当然光是更新数据库还是远远不够的,接下来就是查询查询就要用到ResultSet接口在昨天就说过ResultSet 接口提供对结果集处理的方法

代码演示

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class MysqlDemo {

    public static final String DBDRIVER = "org.gjt.mm.mysql.Driver"; //驱动路径
    public static final String DBURL = "jdbc:mysql://localhost:3306/demo";//数据库路径
    public static final String USER = "root";//用户名
    public static final String PASSWD = "changme";//密码
    public static final String SQL = "SELECT * FROM rj144";//待执行的sql语句
    public static void main(String[] args) throws Exception{
        // TODO Auto-generated method stub
        Connection con = null;                         //数据库连接接口
        ResultSet rs = null;
        Statement stmt = null;                        //数据库操作接口
        
        Class.forName(DBDRIVER);                    //加载驱动
        
        con = DriverManager.getConnection(DBURL,USER,PASSWD);//连接数据库
        stmt = con.createStatement();                    
        
        rs = stmt.executeQuery(SQL);                                //执行sql语句,将结果集存入ResuultSet的实例中
        
        while(rs.next()){
            System.out.println("学号:" + rs.getInt("id") + "\t姓名" + rs.getString("name") 
                                + "\t性别" + rs.getString("sex") + "\t电话" + rs.getString("tel"));  //输出ResultSet实例rs中的数据
        }
        
        stmt.close();                         //关闭操作
        con.close();                          //关闭数据库

    }

}

运行输出

学号:123456 姓名zhangsan 性别m 电话123456789

以上基本就是对数据库的连接与操作,但是可能是编码的问题通过JAVA更新的中文数据到mysql是不正确的,作为一个大一学生都是自学的精力有限还没对此深究,如果确实需要可自行搜索

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。