zoukankan      html  css  js  c++  java
  • 二、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") + "	姓名" + rs.getString("name") 
                                    + "	性别" + rs.getString("sex") + "	电话" + rs.getString("tel"));  //输出ResultSet实例rs中的数据
            }
            
            stmt.close();                         //关闭操作
            con.close();                          //关闭数据库
    
        }
    
    }

    运行输出

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

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

  • 相关阅读:
    接口 抽象类 小记
    java 强制转换
    java 多态
    this super 解释
    Java多态性理解
    final与static
    java动态联编
    什么是继承
    JAVA的覆盖、继承和多态的详细解说.this和super的用法
    java继承覆盖总结
  • 原文地址:https://www.cnblogs.com/liuxpage/p/4531624.html
Copyright © 2011-2022 走看看