Estoy tratando de hacer código java simple que verificará si existe una tabla y/o una columna en una base de datos MySQL. ¿Debería usar código Java para hacer la comprobación o hacer una cadena de consulta SQL y ejecutar eso para hacer la comprobación?¿Cómo verificar si existe una tabla o una columna en una base de datos?
EDIT-
@ aleroot -
He intentado utilizar el código como se muestra a continuación. No veo ninguna tabla o columna cuando ejecuto el código a continuación. Solo veo esto:
Driver Loaded.
Got Connection.
Mi DB tiene una gran cantidad de bases de datos, tablas y columnas. No sé por qué este programa funciona correctamente.
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 !");
}
}
}
Realice una consulta y compruebe si se realiza correctamente. Si es así, sabes que existe tabla/columna. – ATaylor
¿está usando JDBC? –
@FranciscoSpaeth - sí, es jdbc –