国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

JDBC數據庫的使用操作總結

2024-07-24 12:40:41
字體:
來源:轉載
供稿:網友
JDBC是一組能夠執行SQL語句的API   由于傳統的數據庫操作方式需要程序員掌握各個不同的數據庫的API,極其不便   因此java定義了JDBC這一標準的接口和類,為程序員操作數據庫提供了統一的方式   JDBC的操作方式比較單一,由五個流程組成:   1.通過數據庫廠商提供的JDBC類庫向DriverManager注冊數據庫驅動   2.使用DriverManager提供的getConnection()方法連接到數據庫   3.通過數據庫的連接對象的createStatement方法建立SQL語句對象   4.執行SQL語句,并將結果集合返回到ResultSet中   5.使用while循環讀取結果   6.關閉數據庫資源   下面來看看具體操作Mysql數據庫的方法     準備工作   首先我們需要建立一個數據庫和一張簡單的表   復制代碼 代碼如下:     mysql> create database person; Query OK, 1 row affected (0.00 sec)   mysql> use person; Database changed mysql> create table student( -> id int, -> name varchar(20), -> birth year -> ) default charset=utf8; Query OK, 0 rows affected (0.10 sec)     然后往里面插入幾條數據 復制代碼 代碼如下:     mysql> insert into student values -> (1,'張三',1990), -> (2,'李四',1991), -> (3,'王五',1992); Query OK, 3 rows affected (0.02 sec) Records: 3 Duplicates: 0 Warnings: 0     這樣一張簡單的表就建好了 復制代碼 代碼如下:     mysql> select * from student; +------+--------+-------+ | id | name | birth | +------+--------+-------+ | 1 | 張三 | 1990 | | 2 | 李四 | 1991 | | 3 | 王五 | 1992 | +------+--------+-------+ rows in set (0.00 sec)     接下來,去mysql官網下載數據庫連接器這個包 其中這個包里面含有一份文檔,里面列舉了基本的使用方法,可以參考   我們的操作也是按照這份文檔中的內容進行,然后最主要的地方就是導入這個jar包   為了操作方便,這里使用eclipse來導入   右鍵項目-->構件路徑-->添加外部歸檔,添加好了之后如下所示   JDBC數據庫的使用操作總結   現在我們正式開始使用java來操作mysql數據庫   JDBC操作實例1:最簡單的查詢操作   復制代碼 代碼如下:     import java.sql.*;   public class Demo { //為了代碼緊湊性,暫時拋出所有異常 public static void main(String[] args) throws Exception { //注冊數據庫驅動 Class.forName("com.mysql.jdbc.Driver"); //建立數據庫連接 //參數一:jdbc:mysql//地址:端口/數據庫,參數二:用戶名,參數三:密碼 Connection conn = DriverManager.getConnection ("jdbc:mysql://localhost:3306/person","root","admin"); //創建SQL語句 Statement st = conn.createStatement(); //執行語句,返回結果 ResultSet rt = st.executeQuery("show tables"); //循環取出結果 while(rt.next()) { //獲取字段 System.out.println(rt.getString("Tables_in_person")); } //關閉資源,最先打開的最后關 rt.close(); st.close(); conn.close(); } }     運行結果:student 如此便可執行show tables語句查詢出當前數據庫含有多少張表   其中rt.getString()方法是獲取字段,這點需要注意   關閉資源的方式也與以往相反   不過,上面的操作方式靈活性不大,并且不嚴謹     實例2:優化的查詢操作   復制代碼 代碼如下:     import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;   public class Demo { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/person"; String user = "root"; String pwd = "admin"; String sql = "select * from student";   Connection conn = null; Statement st = null; ResultSet rs = null; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection(url,user,pwd); st = conn.createStatement(); //執行查詢語句,另外也可以用execute(),代表執行任何SQL語句 rs = st.executeQuery(sql); while(rs.next()) { System.out.println(rs.getObject(1) + " " +  rs.getObject(2) + " " + rs.getInt("birth")); } //分別捕獲異常 } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally { try { //判斷資源是否存在 if(rs != null) { rs.close(); //顯示的設置為空,提示gc回收 rs = null; } if(st != null) { st.close(); st = null; } if(conn != null) { conn.close(); conn = null; } } catch (SQLException e) { e.printStackTrace(); }  } } }     運行結果: JDBC數據庫的使用操作總結   這里把異常給分別捕獲了,并且相關的字符串全部用變量定義   需要注意下循環取出數據里面的getInt()方法,此處必須知道類型和字段才能取出   如果不知道可以使用getObject(1)取出第一列,getObject(2)取出第二列,以此類推   實例3:自定義變量插入到數據庫   復制代碼 代碼如下:
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 名山县| 贵溪市| 鸡东县| 花垣县| 屏东县| 抚顺县| 凤翔县| 龙岩市| 神农架林区| 仁化县| 林西县| 濮阳县| 同德县| 正蓝旗| 临安市| 闵行区| 阜南县| 盐城市| 沁水县| 尖扎县| 图片| 广安市| 汉川市| 天门市| 阳高县| 公主岭市| 南宫市| 武冈市| 勐海县| 襄垣县| 手游| 台湾省| 三穗县| 贵德县| 溆浦县| 鄄城县| 长白| 仪征市| 伊金霍洛旗| 丰镇市| 平谷区|