package com;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.regex.Pattern;
/**
* @author Administrator
* oracle sql语句转mysql sql语句
*/
public class OracleToMysqlInsert {
public void doChange(String filePath) {
try {
File file = new File(filePath);
FileReader rd = new FileReader(file);
// BufferedReader br = new BufferedReader(rd);
InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "utf-8");
BufferedReader br = new BufferedReader(isr);
File outFile = new File(
filePath.substring(0,
filePath.lastIndexOf(File.separator) + 1)
+ "I"
+ filePath.substring(filePath
.lastIndexOf(File.separator) + 1));
// FileWriter b = new FileWriter(outFile, false);
FileOutputStream writerStream = new FileOutputStream(outFile, false);
BufferedWriter b = new BufferedWriter(new OutputStreamWriter(writerStream, "UTF-8"));
String rowStr;
int i = 0;
while (!(rowStr = br.readLine()).equals("##")) {
while (rowStr.indexOf("to_date('") > 0) {
String rowTemp = rowStr.substring(rowStr
.indexOf("to_date('"));
String aimStr = rowTemp.substring(
rowTemp.indexOf("('") + 1, rowTemp.indexOf(","));
String dateTemp = null;
if (aimStr.indexOf(" ") > 0) {
dateTemp = aimStr.substring(aimStr.indexOf("'") + 1,
aimStr.indexOf(" "));
} else {
dateTemp = aimStr.substring(aimStr.indexOf("'") + 1,
aimStr.lastIndexOf("'"));
}
String[] strTemp = dateTemp.split("-");
String dateStr = strTemp[2] + "-" + strTemp[1] + "-"
+ strTemp[0];
aimStr = aimStr.replaceFirst(dateTemp, dateStr);
String resStr = rowTemp.substring(0,
rowTemp.indexOf(")") + 1);
rowStr = rowStr.replace(resStr.subSequence(0, resStr
.length()), aimStr.subSequence(0, aimStr.length()));
}
b.write(rowStr);
System.out.println(rowStr);
b.write("\r\n");
}
b.flush();
// rename to the original File
file.delete();
b.close();
rd.close();
} catch (FileNotFoundException e) {
// System.out.println("�ļ�δ�ҵ���");
e.printStackTrace();
} catch (IOException e) {
// System.out.println("IO�쳣����д�ļ���");
e.printStackTrace();
}
}
public static void main(String arg[]) {
OracleToMysqlInsert changtext = new OracleToMysqlInsert();
changtext.doChange("C:\\Users\\Administrator\\Desktop\\sys_i18n_message.sql");
System.out.println("OK");
// changtext.doChange("D:\\import\\" + "supplier.sql");
// changtext.doChange("D:\\import\\" + "supplierDetail.sql");
// changtext.doChange("D:\\importData\\" + "codetype.sql");
// changtext.doChange("D:\\importData\\" + "codedict.sql");
// changtext.doChange("D:\\importData\\" + "port.sql");
// changtext.doChange("D:\\importData\\" + "country.sql");
// changtext.doChange("C:\\" + "PODETAIL.sql");
}
}
java代码实现oracle sql语句转mysql sql语句
最新推荐文章于 2024-08-20 13:44:05 发布