把sql输出成。sql文件
作者原创,转载注明出处:
代码:
package importfile; import java.io.*;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement; import java.sql.ResultSetMetaData;
import java.sql.SQLException; import java.util.ArrayList; import java.util.List; public class test {
public static void main(String[] args) throws Exception { SqlExport exprot = new SqlExport();
if(exprot.isExist())
{
System.out.println("脚本文件创建成功");
}else
{
System.out.println("脚本文件创建失败");
return;
}
List<String> lists = new ArrayList<String>();
lists.add("sql语句");
exprot.export(lists); // String url="jdbc:oracle:thin:@localhost:1522:orcl11g";
// String user="username";
// String password="password";
// Class.forName("oracle.jdbc.driver.OracleDriver");
// Connection conn = null;
// conn = DriverManager.getConnection(url, user, password);
//
//
// PreparedStatement pst = null;
// List<String> lists = new ArrayList<String>();
// try {
//
// pst = conn.prepareStatement("select * from test");
// ResultSetMetaData rsd = pst.executeQuery().getMetaData();
// for(int i = 0; i < rsd.getColumnCount(); i++) {
// System.out.print("java类型:"+rsd.getColumnClassName(i + 1));
// System.out.print(" 数据库类型:"+rsd.getColumnTypeName(i + 1));
// lists.add(rsd.getColumnName(i + 1));
// System.out.print(" 字段名称:"+rsd.getColumnName(i + 1));
// System.out.print(" 字段长度:"+rsd.getColumnDisplaySize(i + 1));
// System.out.println();
// }
// for(int i = 0;i<lists.size();i++)
// {
// System.out.println(lists.get(i));
// }
//
//
// } catch(SQLException e) {
// throw new RuntimeException(e);
// } finally {
// try {
// pst.close();
// pst = null;
// exprot.close(exprot.getOut());
// } catch(SQLException e) {
// throw new RuntimeException(e);
// }
// }
//
// }
}
}
class SqlExport
{
public void export (List<String> list) throws IOException
{ try {
for(int i =0;i<list.size();i++)
{
out.write(list.get(i)+"\r\n");
}
out.write("\r\n");
out.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
//判断文件是否存在
public boolean isExist()
{ File file=new File(path);
file.delete();
try {
out = new FileWriter(path,true);
return true;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
} } public void close(FileWriter out) throws IOException
{
out.close();
} public FileWriter getOut()
{
return out;
} private List<String> lists;
private String path = ".//sql脚本.sql";
private FileWriter out = null;
}
注: 其中注释部分是数据连接语句,输出到脚本的sql语句可以在注释部分去组装,
把sql输出成。sql文件的更多相关文章
- 微软BI 之SSIS 系列 - 两种将 SQL Server 数据库数据输出成 XML 文件的方法
开篇介绍 在 SSIS 中并没有直接提供从数据源到 XML 的转换输出,Destination 的输出对象有 Excel File, Flat File, Database 等,但是并没有直接提供 X ...
- mysql 导出sql结果成csv文件
mysql -uroot -p -e "use database;sql语句:" > a.csv 举例: mysql -uroot -p -e "use main; ...
- Pl/sql 如何将oracle的表数据导出成excel文件?
oracle将表数据导出成excel文件的方法 1)在SQL窗体上,查询需要导出的数据 --查询数据条件-- ; 结果视图 2)在查询结果的空白处,右键选择Copy to Excel 3) 查看导出e ...
- Logback 输出 JPA SQL日志 到文件
Logback 输出 JPA SQL日志 到文件 使用Spring Boot 配置 JPA 时可以指定如下配置在控制台查看执行的SQL语句 spring.jpa.show-sql=true Sprin ...
- MyBatis 入门到精通(二) SQL语句映射XML文件
MyBatis 真正强大之处就在这些映射语句,也就是它的魔力所在.对于它的强大功能,SQL 映射文件的配置却非常简单. 如果您比较SQL 映射文件配置与JDBC 代码,您很快可以发现,使用SQL 映射 ...
- 五、SQL映射的XML文件
MyBatis真正的力量是在映射语句中.这里是奇迹发生的地方.对于所有的力量,SQL映射的XML文件是相当的简单.当然如果你将它们和对等功能的JDBC代码来比较,你会发现映射文件节省了大约95%的代码 ...
- SQL*Plus生成html文件
最近使用SQL*Plus命令生成html文件,遇到一些有意思的知识点,顺便记录一下,方便以后需要的时候而这些知识点又忘记而捉急.好记性不如烂笔头吗! 为什么要用SQL*Plus生成html文件? ...
- SQL 映射的 XML 文件
MyBatis 真正的力量是在映射语句中.这里是奇迹发生的地方. 对于所有的力量, SQL映射的 XML 文件是相当的简单.当然如果你将它们和对等功能的 JDBC 代码来比较,你会发现映射文件节省了大 ...
- SQL Server中数据库文件的存放方式,文件和文件组
原文地址:http://www.cnblogs.com/CareySon/archive/2011/12/26/2301597.html SQL Server中数据库文件的存放方式,文件和文件组 ...
随机推荐
- Java生成二维码--QRGen
最近公司需求需要生成一个二维码 , 由于之前没有接触过 , 故此做个记录 . 在网上找到了不少二维码生成工具,都蛮好用的. 不过要集成二维码生成功能到应用开发中,就要选择最好用成熟的库了,最终决定采用 ...
- (数字IC)低功耗设计入门(五)——RTL级低功耗设计(续)
二.RTL级低功耗设计(续) 前面一篇博文我记录了操作数隔离等低功耗设计,这里就主要介绍一下使用门控时钟进行低功耗设计. (4)门控时钟 门控时钟在我的第一篇博客中有简单的描述,这里就进行比较详细的描 ...
- 客户端存储 API
介绍两个在客户端存储数据的 API localStorage与sessionStorage 两个都是window对象的属性,利用这两个属性,可以在客户端存储一些数据 相比cookie,这种存储方式的优 ...
- Spring学习笔记——01 控制反转
想一下之前学的Java,如果某个类需要引用某个对象,则需要手动new一个出来.这样带来的一个问题就是,若被引用的类发生改动或被删除,则引用它的所有类都会报错.因为两个类耦合在一起了.解决的办法就是不由 ...
- AngularJS入门第一课
1.ng-app=" " 定义angularJS的使用范围: 2.ng-init="变量=值;变量='值'" 初始化变量的值,有多个变量时,中间用分号隔 ...
- nodeJS之进程process对象
前面的话 process对象是一个全局对象,在任何地方都能访问到它,通过这个对象提供的属性和方法,使我们可以对当前运行的程序的进程进行访问和控制.本文将详细介绍process对象 概述 process ...
- nfs+rsync+inotify实现文件的实时同步
准备三台服务器进行测试: nfs_server:192.168.12.110 web_server:192.168.12.111 rsync_server:192.168.12.112 网络规划图: ...
- 【PHP】最详细PHP从入门到精通(二)——PHP中的函数
PHP从入门到精通 之PHP中的函数 各位开发者朋友大家好,自上次更新PHP的相关知识,得到了大家的广泛支持.PHP的火爆程度不言而喻,函数作为PHP中极为重要的部分,应诸位的支持,博主继续跟进更新 ...
- OVS 中的 upcall 线程
总体概览如下: 假设upcall handler线程有两个,vport有四个,那么每个vport下都将持有两个NetLink连接的信息,这两个NetLink连接将被用来上送upcall消息. 每个Ne ...
- springmvc返回值为void
/** * 移动端退出登录 * @param req */ @RequestMapping(value="/mobileUserLogout") @ResponseBody pub ...