如何将mysql导入java代码_在java代码中创建mysql数据库和导入数据

public class DatabaseCreatorMysql implements DatabaseCreator{

@Override

public void createDatabaseAndInitialize(DriverConnectionProvider cp,

String databaseName, String sourceFilePath) {

createDatabase(cp,databaseName);

initializeDatabase(cp,databaseName,sourceFilePath);

}

@Override

public void createDatabase(ConnectionProvider cp,String databasename){

Connection con = cp.getConnection();

try {

con.createStatement().execute("create database "+databasename);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

@Override

public void initializeDatabase(DriverConnectionProvider cp,String databaseName,String sourceFilePath){

// TODO Auto-generated method stub

try {

String username = cp.getUser();

String password = cp.getPassword();

StringBuffer sb = new StringBuffer("cmd.exe /C mysql -u");

sb.append(username);

if(password!=null && !password.equalsIgnoreCase(""))

sb.append(" -p").append(password);

sb.append(" ").append(databaseName).append("

//Process proc = java.lang.Runtime.getRuntime().exec("cmd.exe /C mysql -uroot test2

Process proc = java.lang.Runtime.getRuntime().exec(sb.toString());

BufferedInputStream bis = new BufferedInputStream(proc.getErrorStream());

InputStreamReader inputStreamReader = new InputStreamReader(bis,"GBK");

BufferedReader br = new BufferedReader(inputStreamReader);

String line = null;

while ( (line = br.readLine()) != null)

System.out.println(line);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public static void main(String[] args) throws ClassNotFoundException, SQLException, IOException{

//Class.forName("com.mysql.jdbc.Driver");

//Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test2","root","");

//Statement stmt = conn.createStatement();

//stmt.executeUpdate("source C:\\Users\\jiangkai\\Desktop\\erp.sql");

//stmt.execute("source C:\\Users\\jiangkai\\Desktop\\erp.sql");

//String statement ="cmd.exe mysql -uroot -p use test2;source C:/Users/jiangkai/Desktop/erp.sql";

//String statement ="javac";

//String[] statements={

//"cmd.exe /C cmd /C mysqldump -u root -p erp>d:/test.sql",

//"cmd /c mysql -u root",

//"source C:/Users/jiangkai/Desktop/erp.sql",

//"cmd.exe /C mysqldump -uroot erp>d:/test.sql"

//};

//

//Process proc = java.lang.Runtime.getRuntime().exec("cmd.exe /C mysql -uroot test2

//System.out.println("gogogo");

//InputStream stderr=proc.getErrorStream();

//BufferedReader br = new BufferedReader(new InputStreamReader(stderr));

//new String(line.getBytes(),"gb2312")

//String mysql="mysqladmin -uroot -proot create databasename";

//String mysql="mysqladmin -uroot -proot use test2";

//java.lang.Runtime.getRuntime().exec("cmd /c "+mysql);

//String path="mysql test2 < C:/Users/jiangkai/Desktop/erp.sql";

//java.lang.Runtime.getRuntime().exec("cmd /c "+path);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值