DB_CONNECTION_URL = "jdbc:mysql://localHost:3306/test_DB";
当我调试程序时,发生test_DB
不存在的异常。是否可以在查询执行时创建数据库?
答案 0 :(得分:0)
您必须连接到服务器,而不是特定的数据库:
DB_CONNECTION_URL = "jdbc:mysql://localHost:3306/";
然后使用CREATE SCHEMA
添加数据库。
答案 1 :(得分:0)
我对jdbc知之甚少,但通常你可以在没有指定数据库的情况下进行连接,然后检查它是否存在并执行USE test_db
如果有的话,如果不存在则创建它。
通常,您只会看到CREATE DATABASE IF NOT EXISTS test_db
...然后USE test_db
(即无需明确检查是否存在)
答案 2 :(得分:0)
根据您的问题,您必须在使用JDBC连接数据库后创建名为“test_DB”的数据库。
答案 3 :(得分:0)
在执行查询之前,请检查数据库是否存在,执行类似
的操作Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306","root","root");
Statement st = con.createStatement();
DatabaseMetaData meta = con.getMetaData();
ResultSet rs = meta.getCatalogs();
while (rs.next()) {
String listofDatabases=rs.getString("TABLE_CAT");
list.add(listofDatabases);
}
if(list.contains(database)){
System.out.println("Database already exists");
如果没有写查询来创建数据库..比如
String database = DATABASENAME; // "nlshriraam";//bf.readLine();
st.executeUpdate("CREATE DATABASE "+database);
然后执行你的查询..