之前都是通过java来实现连接已存在的数据库或者根据现有数据库创建连接,从而创建新的数据库,从未写过不依赖已存在的数据库,创建新数据库,这不就来了吗
目录
- 需求背景
- 实现
-
- 代码实现
- 自测
需求背景
这里的背景是要实现当用户在页面做操作时,后端根据部署配置时的数据库的IP、端口、用户名和登录密码来动态根据某些规则创建新的数据库
实现
前置
需要用户提前配置好数据库必要参数配置信息
ip、port、userName、password
代码实现
自测代码
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Test {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
// 注册 JDBC 驱动
Class.forName("com.mysql.jdbc.Driver");
// 打开链接
System.out.println("连接数据库...");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/", "root", "123");
// 执行查询
System.out.println(" 实例化Statement对象...");
stmt = conn.createStatement();
String dbName = "test";
String sql = "CREATE DATABASE " + dbName;
stmt.executeUpdate(sql);
System.out.println("数据库创建成功!");
} catch (SQLException se) {
// 处理 JDBC 错误
se.printStackTrace();
} catch (Exception e) {
// 处理 Class.forName 错误
e.printStackTrace();
} finally {
// 关闭资源
try {
if (stmt != null) stmt.close();
} catch (SQLException se2) {
}// 什么都不做
try {
if (conn != null) conn.close();
} catch (SQLException se) {
se.printStackTrace();
}
}
}
}
自测
运行代码前查看数据库
运行,创建名称为test的数据库
刷新数据库查看如下,创建成功