动态创建MySQL数据库

 1 import java.sql.Connection;
 2 import java.sql.DriverManager;
 3 import java.sql.ResultSet;
 4 import java.sql.SQLException;
 5 import java.sql.Statement;
 6 
 7 public class CreateDataSource {
 8 
 9 /**
10 * @param args
11 */
12 public static void main(String[] args) {
13    // TODO Auto-generated method stub
14    String database = "test2";
15    new CreateDataSource().getConn(database);
16 }
17 
18 String mysqlDriver = "com.mysql.jdbc.Driver";
19 String url = "jdbc:mysql://localhost:3306/test1";
20 String newUrl = "jdbc:mysql://localhost:3306/";
21 String username = "root";
22 String password = "root";
23 Connection conn = null;
24 Connection newConn = null;
25 
26 public Connection getConn(String database) {
27 
28    try {
29     Class.forName(mysqlDriver);
30    } catch (ClassNotFoundException e) {
31     // TODO Auto-generated catch block
32     e.printStackTrace();
33    }
34    try {
35     String tableSql = "create table t_user (username varchar(50) not null primary key,"
36       + "password varchar(20) not null ); ";
37     String databaseSql = "create database " + database;
38 
39     conn = DriverManager.getConnection(url, username, password);
40     Statement smt = conn.createStatement();
41     if (conn != null) {
42      System.out.println("数据库连接成功!");
43 
44      smt.executeUpdate(databaseSql);
45 
46      newConn = DriverManager.getConnection(newUrl + database,
47        username, password);
48      if (newConn != null) {
49       System.out.println("已经连接到新创建的数据库:" + database);
50 
51       Statement newSmt = newConn.createStatement();
52       int i = newSmt.executeUpdate(tableSql);//DDL语句返回值为0;
53       if (i == 0) {
54        System.out.println(tableSql + "表已经创建成功!");
55       }
56      }
57     }
58 
59    } catch (SQLException e1) {
60     // TODO Auto-generated catch block
61     e1.printStackTrace();
62    }
63    return conn;
64 }
65 }

 

转载于:https://www.cnblogs.com/zcl1224/p/3695773.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值