Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 由于找不到数据库,Mysql连接失败_Java_Mysql - Fatal编程技术网

Java 由于找不到数据库,Mysql连接失败

Java 由于找不到数据库,Mysql连接失败,java,mysql,Java,Mysql,当我调试程序时,出现一个异常,test\u DB不存在。执行查询时是否可以创建数据库?您必须连接到服务器,而不是特定的数据库: DB_CONNECTION_URL = "jdbc:mysql://localHost:3306/test_DB"; 然后使用CREATE SCHEMA添加数据库。我对jdbc了解不多,但通常您可以在不指定数据库的情况下进行连接,然后检查它是否存在,并执行use test\u db如果存在,则创建它 通常你会看到简单的创建数据库如果不存在test\u db。。。然后

当我调试程序时,出现一个异常,
test\u DB
不存在。执行查询时是否可以创建数据库?

您必须连接到服务器,而不是特定的数据库:

 DB_CONNECTION_URL = "jdbc:mysql://localHost:3306/test_DB";

然后使用
CREATE SCHEMA
添加数据库。

我对jdbc了解不多,但通常您可以在不指定数据库的情况下进行连接,然后检查它是否存在,并执行
use test\u db
如果存在,则创建它


通常你会看到简单的
创建数据库如果不存在test\u db
。。。然后
使用test_db
(即不需要显式检查是否存在)

根据您的问题,您必须在将数据库与JDBC连接后创建名为“test_db”的数据库

在执行查询检查数据库是否存在之前,请执行以下操作

DB_CONNECTION_URL = "jdbc:mysql://localHost:3306/";
如果没有,则写入查询以创建数据库。。像

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);