一個很是標準的鏈接Mysql數據庫的示例代碼

一.About Mysqlphp

1.Mysql 優勢 java

  • 體積小、速度快、開放源碼、免費mysql

  • 通常中小型網站的開發都選擇 MySQL ,最流行的關係型數據庫sql

  • LAMP / LNMP shell

  • Linux做爲操做系統數據庫

  • ApacheNginx做爲 Web 服務器服務器

  • MySQL做爲數據庫oracle

  • PHP做爲服務器端腳本maven

  • 都是免費或開放源碼軟件,不用花一分錢就能夠創建起一個穩定、免費的網站系統編輯器

 

 2.登錄MySQL

  • 登錄:mysql –h 主機名 -u 用戶名 –p

  • 註銷:quit;

  • 修改密碼:mysqladmin –uroot –p舊密碼 password 新密碼

3.可視化工具

phpMyAdmin、MySQL-Front、MySQL Workbench、Navicat等

4.sql語句

  • 不區分大小寫

  • 以分號結尾

  • 註釋:

  • #註釋內容直到行尾

  • --註釋內容直到行尾

  • /*註釋內容*/

5.執行環境

  • Linux:mysql shell

  • Windows:Command Line Client

  • 可視化工具的SQL 編輯器

 

6.where 條件

 

  • 比較運算符:=、 >、 <、 >=、 <=、 !=、 <>

  • 擴展運算符:is null、 is not null、 like、 in、 between

  • 邏輯運算符:and、 or

  • 函數:count、sum、avg、max、min

  • 排序:order by

  • 分組:group by

 

7.操做數據 

 

  • insert into 表名 values (值1, 值2, ...);

  • insert into 表名 (列名1, 列名2, ... ) values (值1, 值2, ...);

 

 

  • 刪除全部數據:delete from 表名;

  • 刪除指定數據:delete from 表名 where 條件;

 

  • 更新全部數據:update 表名 set 列名=新值;

  • 更新指定數據:update 表名 set 列名=新值 where 條件;

  • 更新多列:update 表名 set 列名1=值1, 列名2=值2 [where 條件];

  • 更新爲默認值:update 表名 set 列名=default [where 條件];

 

  • 查詢全部數據:select 列名 from 表名;

  • 查詢指定數據:select 列名 from 表名 [where 條件];

  • 查詢多個列:select 列名1, 列名2 from 表名 [where 條件];

  • 查詢全部列:select * from 表名 [where 條件];

  • 指定別名:select 列名 as 別名 from 代表 [where 條件];

  • 查詢惟一值:select distinct 列名 from 表名;

 

二.示例代碼

1.maven依賴

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.0.2</version>
</dependency>

 

2實例代碼

 1 package com.my.connect;
 2 
 3 import java.sql.Connection;
 4 import java.sql.DriverManager;
 5 import java.sql.PreparedStatement;
 6 import java.sql.ResultSet;
 7 import java.sql.ResultSetMetaData;
 8 import java.sql.SQLException;
 9 /**
10  * 一個很是標準的鏈接Mysql數據庫的示例代碼
11  */
12 public class ConnectDB {
13 
14     public static void main(String[] args) {
15         // TODO Auto-generated method stub
16         Connection con = null;// 建立一個數據庫鏈接
17         PreparedStatement pre = null;// 建立預編譯語句對象,通常都是用這個而不用Statement
18         ResultSet result = null;// 建立一個結果集對象
19         ResultSetMetaData metaData = null;//建立一個表頭信息對象
20         try {
21             // 加載Mysql驅動程序  ,oracle的: Class.forName("oracle.jdbc.driver.OracleDriver");
22             //不知道能夠打出Driver 看導入包的提示
23             Class.forName("com.mysql.jdbc.Driver");
24             String url = "jdbc:mysql://localhost:3306/studata";//localhost 爲本級地址,studata爲數據庫名
25             String userName = "root";
26             String password = "root";
27             con = DriverManager.getConnection(url, userName, password);// 獲取鏈接
28             
29             System.out.println("數據庫鏈接成功!");
30             
31             String sql = "select * from studata s where s.stuNo = ?";//預編譯語句,?表明參數
32             pre = con.prepareStatement(sql);// 實例化預編譯語句
33             pre.setInt(1, 10000);;// 設置參數,前面的1表示參數的索引,而不是表中列名的索引
34             result = pre.executeQuery();// 執行查詢,注意括號中不須要再加參數
35             metaData  = result.getMetaData();//獲取表頭信息
36             while (result.next()) {
37                  // 當結果集不爲空時
38                 System.out.println(metaData.getColumnName(1) + "  " + metaData.getColumnName(2));
39 
40                 System.out.println(result.getString("stuNo") + "  " + result.getString("stuName"));
41             }
42 
43         } catch (Exception e) {
44             // TODO Auto-generated catch block
45             e.printStackTrace();
46         } finally {
47             // 逐一將上面的幾個對象關閉,由於不關閉的話會影響性能、而且佔用資源
48             // 注意關閉的順序,最後使用的最早關閉
49             if (result != null)
50                 try {
51                     result.close();
52                     if (pre != null)
53                         pre.close();
54                     if (con != null)
55                         con.close();
56                     System.out.println("數據庫鏈接已關閉!");
57                 } catch (SQLException e) {
58                     // TODO Auto-generated catch block
59                     e.printStackTrace();
60                 }
61 
62         }
63 
64     }
65 
66 }

 

3.運行結果

數據庫鏈接成功!
stuNo  stuName
10000  趙軍
數據庫鏈接已關閉!
相關文章
相關標籤/搜索