發表文章

目前顯示的是有「jdbc」標籤的文章

[JDBC] Preparecall, createStatement, preparedstatement

前言...,繼上周報告完JDBC+Mysql後,我一直以為prepareStatement跟createStatement是一樣功能,但用在不同Database上,星期一一早我主管叫我進會議室後,幫我指正這是可以用在同樣的Database上,只是會導致後用對SQL下指令的方法不一樣,所以我又特地回頭研究了一下,不過又引發我另一個問題...,等我研究完再提出來,呵呵。 在 Wiki  上,可以看到這三個的解釋,不過通常看完之後,我只覺得他媽的我怎麼還是覺得非常難理解!? Statement :用以執行SQL查詢和更新(針對靜態SQL語句和單次執行)。 PreparedStatement :用以執行包含動態參數的SQL查詢和更新(在伺服器端編譯,允許重複執行以提高效率)。 CallableStatement :用以呼叫資料庫中的 儲存過程 。 然後再看到一堆,關於preparecall、createStatement和preparedstatement的example code。 createStatement -  //创建一个简单的Statement对象  Statement Ex1Stmt = Ex1Con.createStatement();   //创建SQL串,传送到DBMS并执行SQL语句  ResultSet Ex1rs = Ex1Stmt.executeQuery( "SELECT StudentID, FirstName, LastName FROM Students" );   //处理每一个数据行,直到不再有数据行  System.out.println( "Student Number   First Name   Last Name" ); preparedstatement -  ps = conn. prepareStatement ( "SELECT i.*, j.* FROM Omega i, Zappa j WHERE i = ? AND j = ?" ) ; // 使用问号作为参数的标示 // 进行参数设置 // 与大部分Java API中下标的使用方法不同,字段的下标...

[JDBC] JDBC基本的API整理 - 搭配Mysql

JDBC 初始化依序由1~2,3~5為控制api。 1. init : connect to database- String driver = "com.mysql.jdbc.Driver";         String url = "jdbc:mysql://localhost:3306/GUESTBOOK";         String user = "caterpillar";         String password = "123456";         try {             Class.forName(driver);             Connection conn =                DriverManager.getConnection(url,                                   user, password);             if(conn != null && !conn.isClosed()) {                 System.out.println("資料庫連線測試成功!");                 conn.close();             }   ...