数据库操作中如何批量执行多个sql文件?
1.应用场景:在历史数据导入过程中,会发现有很多个表形成的.sql文件,要是一个一个文件去手动执行,实在是费时间,所以采取以下方法。
2.将文件放在一定位置,执行代码获取sql文件名,代码下载地址:https://download.csdn.net/download/qq_31968809/10420154
将代码此处改为需要获取文件名的位置。
- //需要输出文件位置
- static String path = "C:\Users\86191\Desktop";
原上传文件获取的是相对路径,需要变为绝对路径将方法listFilePath_sql改为如下:
- public static void listFilePath_sql(File file) {
- if (file.getName().endsWith(".sql")) {
- String name = file.getAbsolutePath();
- StringBuffer sb = new StringBuffer(name);
- sb.insert(0,"@@");
- // name = name.replace(path, "@@");
- System.out.println(sb);
- }
- }
建立一个.sql文件,格式如下:@@F:xxxxXX56To65.sql
3.使用cmd窗口连接数据库,连接命令为:sqlplus username/pwd@ip/DBname
后执行:@@F:xxxxXX批量执行.sql
等待执行完毕。