把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中数据库文件的存放方式,文件和文件组 ...
随机推荐
- 017 多对多关联映射 双向(many-to-many)
多对多关联映射 双向 两方都持有对象引用,修改对象模型,但数据的存储没有变化. 再修改映射文件: public class Role { private int id; private String ...
- What does a Bayes factor feel like?(转)
A Bayes factor (BF) is a statistical index that quantifies the evidence for a hypothesis, compared t ...
- 【二】python内置类型
1.布尔类型 表示真假的类型(true和false) 数字 0.None,以及元素为空的容器类对象都可视作False,反之为 True. In [1]: bool(0) Out[1]: False I ...
- Assert与内存泄漏
以前知道C/C++有assert之后,我想知道assert会不会造成内存泄漏,于是我做了一个测试: #include <iostream> #include <fstream> ...
- yarn工作流程
YARN 是 Hadoop 2.0 中的资源管理系统, 它的基本设计思想是将 MRv1 中的 JobTracker拆分成了两个独立的服务 : 一个全局的资源管理器 ResourceManager 和每 ...
- 论如何把JS踩在脚下 —— JQuery基础及Ajax请求详解
一.什么是JQuery? JQuery是一种JavaScript框架,是一堆大神搞出来的能够让前端程序猿敲更少代码.实现更多功能的工具(在此,跪谢各位JQuery开发大大们!!!).JQuery的使用 ...
- python中defaultdict的用法
初识defaultdict 之前在使用字典的时候, 用的比较随意, 只是简单的使用dict. 然而这样在使用不存在的key的时候发生KeyError这样的一个报错, 这时候就该defaultdict登 ...
- node.js 开发环境配置 和使用方式
1.在根目录创建一个文件夹 里面 放入js 编写完成后使用 cmd 进行编译就可以了2.expree 安装 卸载: npm uninstall -g express 安装指定版本: npm i ...
- 磁盘配额quota
磁盘配额 1 启用磁盘配额 首先创建新的分区 /dev/sd5,并创建文件系统. [root@local ~]# mkfs.ext4 /dev/sda5 由于xfs 不磁盘配额能成功,这里使用ext4 ...
- Akka(6): become/unbecome:运算行为切换
通过一段时间的学习了解,加深了一些对Akka的认识,特别是对于Akka在实际编程中的用途方面.我的想法,或者我希望利用Akka来达到的目的是这样的:作为传统方式编程的老兵,我们已经习惯了直线流程方式一 ...