2013-11-26 171 views
0

我使用下面的代碼獲取與SQL Server 2008JDBC連接SQL Server 2008中

//connecting java with a different database management system 
import java.sql.*; 
import java.util.Scanner; 

public class MyDatabase { 

    static Connection conn = null; 
    static PreparedStatement ps = null; 

    public static void main(String [] arg) { 
     String urlp1, urlp2, urlp3; 
     urlp1 = "jdbc:sqlserver://;"; 
     urlp2 = "servername=HP-PC" + "\\" + "MYINSTANCE;integratedSecurity=true;"; 
     String url = urlp1 + urlp2; 
     try { 
      Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
     } 
     catch (Exception e) { 
      System.out.println("Exception 1"); 
      e.printStackTrace(); 
     } 
     try { 
      conn = DriverManager.getConnection(url, "sa", "admin"); 
     } 
     catch (Exception ec) { 
      System.out.println("Exception 1 Part 2"); 
      ec.printStackTrace(); 
     } 
     try { 
      System.out.println("Enter name:"); 
      Scanner scan = new Scanner(System.in); 
      String name = scan.nextLine(); 
      System.out.println("Enter age:"); 
      int age = scan.nextInt(); 
      String query = "insert into table1(Stuname,Age) values(?,?);"; 
      ps = conn.prepareStatement(query); 
      ps.setString(1, name); 
      ps.setInt(2, age); 
      conn.commit(); 
     } 
     catch (Exception e1) { 
      System.out.println("Exception 2"); 
      e1.printStackTrace(); 
     } 
     finally { 
      try { 
       System.out.println("Closed!!!"); 
       conn.close(); 
      } 
      catch (Exception e2) { 
       System.out.println("Exception 3"); 
       e2.printStackTrace(); 
      } 
     } 
    } 
} 

我已經下載「sqljdbc4.0.jar」文件連接我的Java應用程序,使用下面的命令cmd以找到SQLServerDriver講座地址:

設置CLASSPATH = .; d:\ Java的\ JRE \ BIN \爲SQL Server \ sqljdbc_4.0 \ ENU \ sqljdbc4.jar微軟JDBC驅動程序4.0

問題是數據未輸入表中。沒有顯示任何錯誤或異常。 我在互聯網上經歷了很多解決方案,但他們都沒有工作。 我該如何做到這一點?

+0

我覺得URL位置不正確,請參閱本http://technet.microsoft.com/en-us/library/ms378428.aspx – SpringLearner

+0

輸出什麼你看到打印到控制檯嗎?你真的有聯繫嗎? – MarkOfHall

回答

0

我假設你沒有得到任何連接

System.out.println("Enter name:"); 
     Scanner scan=new Scanner(System.in); 
     String name=scan.nextLine(); 
     System.out.println("Enter age:"); 
     int age=scan.nextInt(); 
     String query="insert into table1(Stuname,Age) values(?,?);"; 
     ps=conn.prepareStatement(query); 
     ps.setString(1,name); 
     ps.setInt(2,age); 

     // you have forget to submit your changes to the database. try with following line of code 
     ps.execute() or ps.executeQuery() 

     conn.commit();