您的位置:首页 > 博客中心 > 数据库 >

MySQL数据库的使用流程,代码解释

时间:2022-03-14 02:14

数据库的使用流程:
 1.注册驱动;
 2.用DriverManager.getConnection方法获得连接对象con;
 A方法:
   3.用连接对象的createStatement()方法,获得可以执行sql语句的对象stmt;
   4.stmt执行查询(查询语句);
 B方法(推荐):
   3.用连接对象的prepareStatement方法,获得带参数(查询语句)的预处理对象pstmt;
   4.pstmt执行查询,并将结果集赋予ResultSet对象;

 1 public class DbTest{
 2     public static void main(String[] args) {    
 3         /**
 4          * 数据库的使用:
 5          * 1.注册驱动;
 6          * 2.用DriverManager.getConnection方法获得连接对象con;
 7          *     A方法:
 8          *         3.用连接对象的createStatement()方法,获得可以执行sql语句的对象stmt;
 9          *         4.stmt执行查询(查询语句);
10          *     B方法(推荐):
11          *         3.用连接对象的prepareStatement方法,获得带参数(查询语句)的预处理对象pstmt;
12          *         4.pstmt执行查询,并将结果集赋予ResultSet对象;
13          */
14         try {
15                 Class.forName("com.mysql.jdbc.Driver");                                                      //注册驱动
16                 Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/book","root","root123");//获得连接对象
17                 //使用statement方法处理sql语句的执行,与 PreparedStatement方法稍有不同。
18                 Statement stmt=con.createStatement();                                     //获得可以执行sql语句的对象
19                 ResultSet rs=stmt.executeQuery("select * from bookinfo where id=1");            //执行查询,并将结果集赋予ResultSet对象
20                 /**推荐以下方法:
21                 PreparedStatement pstmt=con.prepareStatement("select * from bookinfo where id=1");//获得预处理对象
22                 ResultSet rs=pstmt.executeQuery();                                       //执行查询,并将结果集赋予ResultSet对象
23                  */
24                 while(rs.next())
25                 {int id=rs.getInt(1);
26                     System.out.println(rs.getString(2)+"  "+rs.getString(3)+"  "+rs.getString(4));
27                 }
28             } catch (ClassNotFoundException e) {                                              //捕获驱动类无法找到异常
29                 e.printStackTrace();                                        
30             } catch (SQLException e) {                                                            //捕获SQL异常
31                 e.printStackTrace();
32             }
33         }
34 }

 

热门排行

今日推荐

热门手游