2010-12-16 78 views
0

我試圖做到以下幾點:如何發送參數作爲字符串

String dbURL= "jdbc:oracle:thin:@HOST:PORT:DB,USERNAME,PASSWORD"; 
//Statement stmt = conn.createStatement(dbURL); 

conn.createStatment期待3個參數,而不是1串,所以我得到一個錯誤。是否有可能將它們全部放在一個字符串中並通過它?我知道這不是解決這個問題的正確方法,但我也要求將來的參考。

編輯:我的錯誤。我的意思是

Connection conn = DriverManager.getConnection(URL) 
+3

你的代碼沒有意義。您將SQL傳遞給'createStatement'方法,而不是JDBC URL。你會使用URL來獲得'Connection'對象。 – skaffman 2010-12-16 12:54:05

+0

編輯原始帖子 – code511788465541441 2010-12-16 13:35:03

回答

2

正如其他人所指出的那樣,你在做什麼,只是將無法工作。使用這個:

String dbURL= "jdbc:oracle:thin:@HOST:PORT:DB,USERNAME,PASSWORD"; 
Connection conn = DriverManager.getConnection(dbURL); 
PreparedStatement ps = conn.prepareStatement("your SQL"); 

第一行是你的數據庫URL。

第二線將得到使用DB URL的實際連接。

第三行可以讓你從你的連接得到事先準備好的聲明。

這種模式被廣泛使用,所以你應該使用它太(除非您在Java EE,其中獲得數據庫連接的工作原理有點不同是)。

0

使用JDBC需要幾個步驟。通常他們是:

  1. 創建連接;
  2. 創建語句(或準備語句);
  3. 執行語句;
  4. 處理結果;
  5. 關閉資源(結果集,語句,連接)。

我有你不知道的JDBC基礎知識的感覺。看看JDBC tutorial

+0

你甚至讀過我的問題 – code511788465541441 2010-12-16 15:25:36

+0

是的,我做過。這個問題非常混亂,因爲它講的是'conn.createStatement'及其3個參數,然後是'DriverManager.getConnection'。您可以編輯問題以使其更清晰。 – 2010-12-16 15:38:10

相關問題