//這種方式為jdbc直接連接,需要添加jar文件
1 package com.howe2; 2 import java.sql.*; 3 4 public class test2 { 5 public static void main(String [] args) 6 { 7 PreparedStatement ps = null; 8 Connection con = null; 9 try 10 { 11 //1. 加載驅動 12 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 13 //2. 獲得連接 14 con = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName = howe", "sa", "sa"); 15 //3. 創建PreparedStatement 16 ps = con.prepareStatement("insert into teacher values(?,?,?)");//一般用? 表示 17 //給?賦值 18 ps.setString(1, "t010"); 19 ps.setString(2, "wek"); 20 ps.setString(3, "Shanghai"); 21 //執行 22 int i = ps.executeUpdate(); 23 if(i == 1) 24 { 25 System.out.println("insert OK"); 26 } 27 else 28 System.out.println("not OK"); 29 }catch(Exception e) 30 { 31 e.printStackTrace(); 32 } 33 finally 34 { 35 try { 36 //關閉資源 37 if(ps != null) 38 ps.close(); 39 if(con != null) 40 con.close(); 41 } catch (SQLException e) { 42 // TODO Auto-generated catch block 43 e.printStackTrace(); 44 } 45 } 46 } 47 }
這種方式為jdbc-odbc橋接的方式,不需要添加jar文件,但是需要配置數據源,配置數據源的步驟: 控制面板-> 系統和安全->管理工具->數據源(ODBC),然后雙擊打開,在用戶(DSN)下帶你及添加, 選擇SQL Server, 然后輸入一個名字,描述不用輸入,服務器填“localhost”或者".", 點擊下一步,選擇數用用戶名和密碼的SQL Server驗證,然后輸入登錄數據庫時的用戶名和密碼,如果連接不上,出現錯誤的話,就要點客戶端配置,把動態選擇端口去掉,默認1433端口,這個前提是1433端口已經打開,可以在cmd下用netstat -an命令查看1433端口是否打開,如果沒有打開的話,再去配置SQL Server的TCP/IP, 然后完成了之后,就簡單了,下面是代碼:
1 package com.howe; 2 import java.sql.*; 3 public class test1 { 4 5 public static void main(String[] args) { 6 Connection con = null; 7 Statement sm = null; 8 try 9 { 10 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 11 con = DriverManager.getConnection("jdbc:odbc:mytest", "sa", "sa"); 12 sm = con.createStatement(); 13 14 int result = sm.executeUpdate("insert into teacher values('t008','zhang','qingdao')"); 15 if(result == 1) 16 System.out.println("insert success"); 17 else 18 System.out.println("insert error"); 19 20 }catch(Exception e) 21 { 22 e.printStackTrace(); 23 }finally 24 { 25 //close resource 26 try { 27 if(sm != null) 28 sm.close(); 29 if(con != null) 30 con.close(); 31 } catch (SQLException e) { 32 // TODO Auto-generated catch block 33 e.printStackTrace(); 34 } 35 } 36 37 } 38 39 }
