Подтвердить что ты не робот

Создание базы данных MySQL с Java

Можно ли создать базу данных MySQL из Java?

Я видел только примеры URL-адресов соединений, например, где имя базы данных указано в URL-адресе:

String url="jdbc:mysql://localhost:3306/test";

Connection con = DriverManager.getConnection( url, "cb0", "xxx" );

Как создать базу данных MySQL, когда у меня есть только имя пользователя и пароль?

4b9b3361

Ответ 2

Чтобы создать базу данных через Java-код, вы должны использовать executeUpdate(sql) вместо executeQuery(sql); и подключиться к базе данных mysql как пользователь root:

connection =  DriverManager.getConnection(
    "jdbc:mysql://localhost:3306/mysql?zeroDateTimeBehavior=convertToNull",
    "root", "root"
);
Statement st = connection.createStatement();
st.executeUpdate(sql);
st.close();

Ответ 3

Чтобы сделать вещи еще проще, вы можете использовать NetBeans 6.5 и упростить настройку баз данных SQL. Я использую их прямо сейчас и его спасатель в графических интерфейсах и соединениях с базой данных. Вот какой код для подключения к базе данных mysql из NetBeans:

    //these are variables i declare in the beginning of my code
    public static final String DRIVER = "com.mysql.jdbc.Driver";
    public static final String DATABASE_URL = "jdbc:mysql://localhost:3306/jtschema";
    private Connection connection = null;
    public static Statement statement = null;

    public void initSQLServer() {
        try {
            Class.forName(DRIVER).newInstance();
            try {
                connection = DriverManager.getConnection(DATABASE_URL, "root", "Dropatrain!248");
                statement = connection.createStatement();
            } catch (SQLException e) {
                System.out.println("SQLException: " + e.getMessage());
                System.out.println("SQLState: " + e.getSQLState());
                System.out.println("VendorError: " + e.getErrorCode());
            }
        } catch (Exception ex) {
            System.out.println(ex);
        }
    }

Ответ 4

Элегантный подход к таким проблемам заключается в использовании DDL Utils от Apache. Это не только послужит основной цели, позволяющей выполнять ваши (внешние настраиваемые) DDL, но также сделает вашу базу данных приложений независимой.

Ответ 5

Вы можете использовать следующие строки:

    try {
        String databaseName = "dbName";
        String userName = "root";
        String password = "yourPassword";

        String url = "jdbc:mysql://localhost:3306/mysql?zeroDateTimeBehavior=convertToNull";
        Connection connection = DriverManager.getConnection(url,username, password);

        String sql = "CREATE DATABASE " + databaseName;

        Statement statement = connection.createStatement();
        statement.executeUpdate(sql);
        statement.close();
        JOptionPane.showMessageDialog(null, databaseName + " Database has been created successfully", "System Message", JOptionPane.INFORMATION_MESSAGE);

    } catch (Exception e) {
        e.printStackTrace();
}