我想製作一個簡單的java代碼來檢查MySQL數據庫中是否存在表和/或列。我應該使用Java代碼來執行檢查或創建一個SQL查詢字符串並執行檢查嗎?如何檢查數據庫中是否存在表或列?
編輯 -
@ aleroot -
我試着用你的代碼,如下圖所示。當我運行下面的代碼時,我沒有看到任何表或列。我只看到這個 -
Driver Loaded.
Got Connection.
我的DB有很多的數據庫,表和列。我不知道爲什麼這個程序正常工作。
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Tester {
static Connection conn;
static Statement st;
public static void main(String[] args) throws Exception {
try {
// Step 1: Load the JDBC driver.
System.out.println("Driver Loaded.");
// Step 2: Establish the connection to the database.
String url = "jdbc:mysql://localhost:3306/";
conn = DriverManager.getConnection(url, "cowboy", "123456");
System.out.println("Got Connection.");
st = conn.createStatement();
} catch (Exception e) {
System.err.println("Got an exception! ");
e.printStackTrace();
System.exit(0);
}
DatabaseMetaData md2 = conn.getMetaData();
ResultSet rsTables = md2.getColumns(null, null, "customers", "name");
if (rsTables.next()) {
System.out.println("Exists !");
}
}
}
進行查詢並檢查它是否成功。如果是,你知道表/列存在。 – ATaylor 2012-07-28 07:38:26
你使用的是JDBC嗎? – 2012-07-28 07:41:05
@FranciscoSpaeth - 是的,它的jdbc – 2012-07-28 09:16:21