作者原创,转载注明出处:

代码:

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文件的更多相关文章

  1. 微软BI 之SSIS 系列 - 两种将 SQL Server 数据库数据输出成 XML 文件的方法

    开篇介绍 在 SSIS 中并没有直接提供从数据源到 XML 的转换输出,Destination 的输出对象有 Excel File, Flat File, Database 等,但是并没有直接提供 X ...

  2. mysql 导出sql结果成csv文件

    mysql -uroot -p -e "use database;sql语句:" > a.csv 举例: mysql -uroot -p -e "use main; ...

  3. Pl/sql 如何将oracle的表数据导出成excel文件?

    oracle将表数据导出成excel文件的方法 1)在SQL窗体上,查询需要导出的数据 --查询数据条件-- ; 结果视图 2)在查询结果的空白处,右键选择Copy to Excel 3) 查看导出e ...

  4. Logback 输出 JPA SQL日志 到文件

    Logback 输出 JPA SQL日志 到文件 使用Spring Boot 配置 JPA 时可以指定如下配置在控制台查看执行的SQL语句 spring.jpa.show-sql=true Sprin ...

  5. MyBatis 入门到精通(二) SQL语句映射XML文件

    MyBatis 真正强大之处就在这些映射语句,也就是它的魔力所在.对于它的强大功能,SQL 映射文件的配置却非常简单. 如果您比较SQL 映射文件配置与JDBC 代码,您很快可以发现,使用SQL 映射 ...

  6. 五、SQL映射的XML文件

    MyBatis真正的力量是在映射语句中.这里是奇迹发生的地方.对于所有的力量,SQL映射的XML文件是相当的简单.当然如果你将它们和对等功能的JDBC代码来比较,你会发现映射文件节省了大约95%的代码 ...

  7. SQL*Plus生成html文件

    最近使用SQL*Plus命令生成html文件,遇到一些有意思的知识点,顺便记录一下,方便以后需要的时候而这些知识点又忘记而捉急.好记性不如烂笔头吗! 为什么要用SQL*Plus生成html文件?   ...

  8. SQL 映射的 XML 文件

    MyBatis 真正的力量是在映射语句中.这里是奇迹发生的地方. 对于所有的力量, SQL映射的 XML 文件是相当的简单.当然如果你将它们和对等功能的 JDBC 代码来比较,你会发现映射文件节省了大 ...

  9. SQL Server中数据库文件的存放方式,文件和文件组

    原文地址:http://www.cnblogs.com/CareySon/archive/2011/12/26/2301597.html   SQL Server中数据库文件的存放方式,文件和文件组 ...

随机推荐

  1. Java生成二维码--QRGen

    最近公司需求需要生成一个二维码 , 由于之前没有接触过 , 故此做个记录 . 在网上找到了不少二维码生成工具,都蛮好用的. 不过要集成二维码生成功能到应用开发中,就要选择最好用成熟的库了,最终决定采用 ...

  2. (数字IC)低功耗设计入门(五)——RTL级低功耗设计(续)

    二.RTL级低功耗设计(续) 前面一篇博文我记录了操作数隔离等低功耗设计,这里就主要介绍一下使用门控时钟进行低功耗设计. (4)门控时钟 门控时钟在我的第一篇博客中有简单的描述,这里就进行比较详细的描 ...

  3. 客户端存储 API

    介绍两个在客户端存储数据的 API localStorage与sessionStorage 两个都是window对象的属性,利用这两个属性,可以在客户端存储一些数据 相比cookie,这种存储方式的优 ...

  4. Spring学习笔记——01 控制反转

    想一下之前学的Java,如果某个类需要引用某个对象,则需要手动new一个出来.这样带来的一个问题就是,若被引用的类发生改动或被删除,则引用它的所有类都会报错.因为两个类耦合在一起了.解决的办法就是不由 ...

  5. AngularJS入门第一课

    1.ng-app=" "   定义angularJS的使用范围: 2.ng-init="变量=值;变量='值'"   初始化变量的值,有多个变量时,中间用分号隔 ...

  6. nodeJS之进程process对象

    前面的话 process对象是一个全局对象,在任何地方都能访问到它,通过这个对象提供的属性和方法,使我们可以对当前运行的程序的进程进行访问和控制.本文将详细介绍process对象 概述 process ...

  7. nfs+rsync+inotify实现文件的实时同步

    准备三台服务器进行测试: nfs_server:192.168.12.110 web_server:192.168.12.111 rsync_server:192.168.12.112 网络规划图: ...

  8. 【PHP】最详细PHP从入门到精通(二)——PHP中的函数

     PHP从入门到精通 之PHP中的函数 各位开发者朋友大家好,自上次更新PHP的相关知识,得到了大家的广泛支持.PHP的火爆程度不言而喻,函数作为PHP中极为重要的部分,应诸位的支持,博主继续跟进更新 ...

  9. OVS 中的 upcall 线程

    总体概览如下: 假设upcall handler线程有两个,vport有四个,那么每个vport下都将持有两个NetLink连接的信息,这两个NetLink连接将被用来上送upcall消息. 每个Ne ...

  10. springmvc返回值为void

    /** * 移动端退出登录 * @param req */ @RequestMapping(value="/mobileUserLogout") @ResponseBody pub ...