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

代码:

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. 【JAVAWEB学习笔记】03_JavaScript

    javascript简单介绍 ECMAScript 1.语法 2.变量:只能使用var定义,如果在函数的内容使用var定义,那么它是一个局部变量,如果没有使用var它是一个全局的.弱类型! 3.数据类 ...

  2. Python爬虫学习之获取网页源码

    偶然的机会,在知乎上看到一个有关爬虫的话题<利用爬虫技术能做到哪些很酷很有趣很有用的事情?>,因为强烈的好奇心和觉得会写爬虫是一件高大上的事情,所以就对爬虫产生了兴趣. 关于网络爬虫的定义 ...

  3. 《JavaScript高级程序设计》里对 call() 和 apply() 的解释 (116页)

    每个函数都包含两个非继承而来的方法:apply()和call().这两个方法的用途都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值. apply(): 方法接受两个参数:一个是在其 ...

  4. Two Sum 2015年6月8日

    Given an array of integers, find two numbers such that they add up to a specific target number. The ...

  5. python3 爬 妹子图

    Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式 Beautiful Soup 4 通过PyP ...

  6. 项目管理之 SVN 管理软件 CornerStone for Mac

    常用的项目管理有 Git 和 SVN.之前公司一直使用的是 Git,使用的是 SourceTree 客户端,据说 Git 比 SVN 要好,只能说各有特点吧,有兴趣的可以查看下两个的区别. 下面是学习 ...

  7. 【Netty】WebSocket

    一.前言 前面学习了codec和ChannelHandler之间的关系,接着学习WebSocket. 二.WebSocket 2.1. WebSocket介绍 WebSocket协议允许客户端和服务器 ...

  8. .net开源权限管理系统

    有业务请加QQ 245747009 源码地址:http://git.oschina.net/sunzewei/EIP 一.更新记录1.更新日期:2017-02-24 00:00:002.更新内容: 版 ...

  9. python不使用第三方变量,交换两个变量的值

    #不使用第三个变量交换两个变量的值 a=1 b=2 a,b=b,a#python的直接交换 #另一种交换方法 a=a+b#a=3 b=2 b=a-b#a=3 b=1 a=a-b#a=2 b=1 pri ...

  10. 【PHP】最详细PHP从入门到精通(三)——PHP中的数组

     PHP从入门到精通 之PHP中的数组 各位开发者朋友大家好,链接上次更新,我们PHP的学习也更深了一层,本次博主给大家带来PHP数组的数组实例详解的相关资料.数组分为数组数值数值,关联数组,多维数组 ...