我们可能会从其他库导入表到JRT要支持的库里。或者用其他语言生成导表SQL来让JRT执行SQL创建表和导入数据,为此需要一个能运行SQL脚本文件的脚步。
脚本示例,这个是用JRT的M生成迁移表SQL生成的:
导入SQL的脚本:
import JRTBLLBase.BaseHttpHandlerNoSession;
import java.io.File;
import java.util.List;
/**
* 执行D盘下的mktablesql.sql文件的sql导入表结构,供通过SQL文件导入数据和表结构用
*/
public class JRTImportTable extends BaseHttpHandlerNoSession {
/**
* 执行Sql脚本
* @return
*/
public String Do() throws Exception
{
String sqlPath="D:\\mktablesql.sql";
File file=new File(sqlPath);
//执行脚本
if(file.exists())
{
List<String> sqlList=JRT.Core.Util.TxtUtil.ReadText(sqlPath);
if(sqlList!=null&&sqlList.size()>0)
{
//循环执行Sql
for(String s:sqlList)
{
if(s.isEmpty())
{
continue;
}
if(s.substring(s.length()-1).equals(";"))
{
s=s.substring(0,s.length()-1);
}
try {
System.out.println("执行:" + s);
int ret = EntityManager().ExecUpdateSQL(s);
System.out.println("返回:" + ret);
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
}
return "完成";
}
else
{
return sqlPath+"不存在";
}
}
}
执行导入
这样,就可以不依赖外部工具导表和导数据了