2013-10-10 17 views
-1

我在jsp中使用字符串模式編寫數據庫查詢時遇到問題。 示例:我想知道表中是否存在數據庫,表名可以任何名稱開頭,但以「session」結尾。例如:guru_session,hellosession等。我如何使用*,? ,[]在jsp中查詢數據庫?

如何編寫該查詢?

here is my code in jsp : 
    DatabaseMetaData md = con.getMetaData(); 
    ResultSet rs = md.getTables(null, null, "table_name_here", null); 

我試過使用「* session」來檢查表名「guru_session」是否存在。 但它不工作。在這裏給我一些幫助。

+0

沒有辦法在不知道表名的情況下無法訪問表。你是否有機會嘗試入侵數據庫並做錯了什麼? –

+0

java!= javascript –

回答

0

首先,javascript和java是不同的語言。在你的情況下,當java運行在服務器上時,javascript可以在客戶端瀏覽器中工作。

有一種方法可以在客戶端和服務器之間通過javascript在後臺異步交互。你的任務看起來有點奇怪,根據我的經驗,當開發人員需要在開發過程中做出非優雅的決定時,那麼整個應用程序結構就會出現問題。重新考慮解決方案的體系結構可能很有用。

它依賴於數據庫平臺,但表名存儲在系統表中。檢查特定RDBMS平臺的系統表,並查詢這些系統表以獲取所需的信息。您可以通過對服務器上的servlet的ajax調用在後臺異步執行此操作,並在客戶端的瀏覽器上執行相應操作。

祝你好運。

0

你需要運行這樣的查詢:

SELECT * 
    FROM information_schema.tables 
WHERE table_name LIKE '%session'; 

我認爲,這種方法可以幫助你。

相關問題