package test;
import java.sql.*;
public class MakeSql {
public MakeSql() {
String database = "newsql"; // 需要用的数据库名
getConn(database); // 自定义的方法
}
public void getConn(String database) {
// 定义MySQL的数据库驱动程序
String mysqlDriver = "com.mysql.jdbc.Driver";
// MySQL数据库的连接用户名
String username = "root";
// MySQL数据库的连接密码
String password = "123123";
try {
// 加载驱动程序
Class.forName(mysqlDriver);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
// 要新建数据库时,需要连接已有的数据库,而 mysql 是安装MySQL后的就存在数据库
// 定义MySQL数据库的连接地址
String url = "jdbc:mysql://127.0.0.1:3306/mysql"
+ "?useUnicode=true&characterEncoding=utf-8&useSSL=false";
// 数据库连接
Connection conn = null;
// 连接到mysql这个数据库
conn = DriverManager.getConnection(url, username, password);
// 实例化Statement对象
Statement smt = conn.createStatement();
if (conn != null) { // 如果连接成功
// MySQL数据库语句——作用:创建新的数据库,并设置varchar的字符集为utf8,使得中文可正常显示
String databaseSql1 = "create database " + database + " character set utf8 ;";
// 执行操作,创建所需的数据库
smt.executeUpdate(databaseSql1);
// 定义新的MySQL数据库的连接地址
String newUrl = "jdbc:mysql://127.0.0.1:3306/" + database
+ "?useUnicode=true&characterEncoding=utf-8&useSSL=false";
// 新的数据库连接
Connection newConn = null;
// 创建了新的数据库后,连接到这个数据库
newConn = DriverManager.getConnection(newUrl, username, password);
if (newConn != null) {
// 连接到新建的数据库
Statement newSmt = newConn.createStatement();
// MySQL数据库语句——作用:新建数据库后,转到使用该新建的数据库
String databaseSql2 = "use " + database;
int i = newSmt.executeUpdate(databaseSql2); // 执行成功时,返回值为0;
// MySQL数据库语句——作用:创建user的表,表头的内容有:
// 序号(num),ID(id),密码(password),名字(name)
String tableSql1 = "create table user ("
+ "num int(5) not null primary key auto_increment,"
+ "id int(5) not null ,"
+ "password varchar(20) not null,"
+ "name varchar(20) not null );";
int o = newSmt.executeUpdate(tableSql1);// 执行成功时,返回值为0;
// MySQL数据库语句——作用:创建表后,在这个表里创建一个初始的账号(123),密码(123),名字(123)
String tableSql2 = " INSERT INTO user(id,password,name) " + "values (123,123,123) ;";
int p = newSmt.executeUpdate(tableSql2);// 执行成功时,返回值为0;
if (i != 0 || o != 0 || p != 0) { // 用来判断所需的数据库的 表、表头、初始信息
// 是否创建成功
System.out.println("创建数据库" + database + "成功!");
} else {
System.out.println("创建数据库" + database + "失败!");
}
}
}
} catch (SQLException e1) {
e1.printStackTrace();
}
}
public static void main(String[] args) { // 开始新建数据库
new MakeSql();
}
import java.sql.*;
public class MakeSql {
public MakeSql() {
String database = "newsql"; // 需要用的数据库名
getConn(database); // 自定义的方法
}
public void getConn(String database) {
// 定义MySQL的数据库驱动程序
String mysqlDriver = "com.mysql.jdbc.Driver";
// MySQL数据库的连接用户名
String username = "root";
// MySQL数据库的连接密码
String password = "123123";
try {
// 加载驱动程序
Class.forName(mysqlDriver);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
// 要新建数据库时,需要连接已有的数据库,而 mysql 是安装MySQL后的就存在数据库
// 定义MySQL数据库的连接地址
String url = "jdbc:mysql://127.0.0.1:3306/mysql"
+ "?useUnicode=true&characterEncoding=utf-8&useSSL=false";
// 数据库连接
Connection conn = null;
// 连接到mysql这个数据库
conn = DriverManager.getConnection(url, username, password);
// 实例化Statement对象
Statement smt = conn.createStatement();
if (conn != null) { // 如果连接成功
// MySQL数据库语句——作用:创建新的数据库,并设置varchar的字符集为utf8,使得中文可正常显示
String databaseSql1 = "create database " + database + " character set utf8 ;";
// 执行操作,创建所需的数据库
smt.executeUpdate(databaseSql1);
// 定义新的MySQL数据库的连接地址
String newUrl = "jdbc:mysql://127.0.0.1:3306/" + database
+ "?useUnicode=true&characterEncoding=utf-8&useSSL=false";
// 新的数据库连接
Connection newConn = null;
// 创建了新的数据库后,连接到这个数据库
newConn = DriverManager.getConnection(newUrl, username, password);
if (newConn != null) {
// 连接到新建的数据库
Statement newSmt = newConn.createStatement();
// MySQL数据库语句——作用:新建数据库后,转到使用该新建的数据库
String databaseSql2 = "use " + database;
int i = newSmt.executeUpdate(databaseSql2); // 执行成功时,返回值为0;
// MySQL数据库语句——作用:创建user的表,表头的内容有:
// 序号(num),ID(id),密码(password),名字(name)
String tableSql1 = "create table user ("
+ "num int(5) not null primary key auto_increment,"
+ "id int(5) not null ,"
+ "password varchar(20) not null,"
+ "name varchar(20) not null );";
int o = newSmt.executeUpdate(tableSql1);// 执行成功时,返回值为0;
// MySQL数据库语句——作用:创建表后,在这个表里创建一个初始的账号(123),密码(123),名字(123)
String tableSql2 = " INSERT INTO user(id,password,name) " + "values (123,123,123) ;";
int p = newSmt.executeUpdate(tableSql2);// 执行成功时,返回值为0;
if (i != 0 || o != 0 || p != 0) { // 用来判断所需的数据库的 表、表头、初始信息
// 是否创建成功
System.out.println("创建数据库" + database + "成功!");
} else {
System.out.println("创建数据库" + database + "失败!");
}
}
}
} catch (SQLException e1) {
e1.printStackTrace();
}
}
public static void main(String[] args) { // 开始新建数据库
new MakeSql();
}
}
给个直观的:
运行后,显示
此时数据库创建成功。
更进一步的查看,我推荐用Navicat for MySQL这个软件。当然这个软件可以用来创建、修改数据库,只是我用来查看罢了。其功能的使用方法,请自行搜索。
如果数据库连接不成功,请检查是否有,版本可以稍有不同。如果没有,请自行搜索下载导入。