可用spool的方式将查询内容放入文本。
创新互联专注于坊子企业网站建设,响应式网站建设,商城系统网站开发。坊子网站建设公司,为坊子等地区提供建站服务。全流程按需定制设计,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
方法如下:
1、在windows下如c盘data目录下创建脚本,名字为:exec.sql,内容为:
set trimspool on
set linesize 120
set pagesize 2000
set newpage 1
set heading off
set term off
spool 路径+文件名
select col1||','||col2||','||col3||','||col4||'..' from tablename;
spool off
2、命令提示符下先进到c盘data目录下,然后执行如下语句:
sqlplus 用户名/密码@数据库实例名
@exec.sql
3、如查询语句为:
select empno||','||deptno||','||sal||','||comm from emp;
则最后生成的文件内容如下:
BLOB :大数据类型,最大存储65K,不可以被导出,只能在oracle数据库中进行查看。 扩展: BLOB (binary large object),二进制大对象,是一个可以存储二进制文件的容器。在计算机中,BLOB常常是数据库中用来存储二进制文件的字段类型。
在oracle中存储大量的文字应该是用CLOB字段来存储。这种类型在用java将数据存进数据库中时比较简单,直接将String类型的文本写入就可以了。但是在从数据库中读取CLOB类型的数据到java中时比较麻烦,因为你是拿不到数据的,只能拿到这个字段的一个隐式指针,然后还要通过输入流来拿到。
图片一般存图片的url地址,文本用varchar2(),最多varchar2(4000). 再多可以永clob
sqlplus下
sql spool c:\001.txt
sqlselect * from 表名; --这句就是你查询的语句,你自己写吧
sql spool off
然后你去你C盘下找到001.txt文件就好了
输出格式上有问题的话,就百度一下sqlplus的参数
clob类型,但对于这个类型处理起来还是比较麻烦的,varchar2长度为4000bytes,如果varchar2能满足楼主的需求,建议使用varchar2,下面提供了在Java 中读取clob类型的方式,我主要讲的是JDBC的操作,Hibernate目前不讲,操作这个Clob列主要分为插入和获取俩个操作:
1、Java程序插入Clob值到Oracle数据库表中:
String clob= "这里主要是要插入到表中的值";//前面具体数据库连接代码这里省略,直接进正题String sql = "insert into clob_test(id,str) values (1,?)";PreparedStatement stmt = conn.prepareStatement(sql);// 将clob转成流形式
Reader clobReader = new StringReader(clob);stmt.setCharacterStream(1,clobReader,clob.length());// 替换sql语句中的?
stmt.executeUpdate();
2、读取Clob列的值
String sql = "select str from clob_test where id=1";PreparedStatement stmt = conn.prepareStatement(sql);ResultSet rs = stmt.executeQuery();
//最后获得的结果
String resultClob;
if(rs.next()){
//导入oracle.sql.CLOB包,或者直接引用这个包oracle.sql.CLOB clob = rs.getClob("str");Reader rd= clob.getCharacterStream();// 得到流BufferedReader br = new BufferedReader(rd);String s = br.readLine();
StringBuffer sb= new StringBuffer();
while (s != null) {
// 循环赋值
sb.append(s);
s = br.readLine();
}
clobResult = sb.toString();
}