sqlplus保存到文件不适用于大字段

时间:2013-10-21 18:48:47

标签: file batch-file views sqlplus

我想要的是:运行.bat文件以将视图脚本保存到文件

我尝试了什么:我使用。

创建了一个.bat文件
sqlplus blabla@blaip/bla @"C:\Documents and Settings\New user\Desktop\New Folder\sqlplus\some.sql"
pause

和.sql文件:

SET TERMOUT OFF; 
SPOOL "C:\Documents and Settings\New user\Desktop\New Folder\sqlplus\res.txt"
select  text from all_views where view_name LIKE 'V_NOK_ALL_2G_BTS';
SPOOL OFF
exit

问题是什么:看来文本字段是备忘录,而sqlplus只显示前6行

帮助!!!

2 个答案:

答案 0 :(得分:1)

该列可能是CLOB或LONG数据类型。

尝试将SET LONG 10000添加到.sql脚本的顶部。这个数字可以调整,但我相信有一个限制。


您可能还希望使用SET LINESIZE 300(无论大小适合您)增加线条大小。

你也应该修剪尾随空白。

SET TRIMOUT ON修剪屏幕输出中的尾随空白。

SET TRIMSPOOL ON修剪假脱机输出的尾随空白。

答案 1 :(得分:0)

感谢dbenham,但现在新的显示格式为:

text
---------------------------------------------------------------
drop view blabla;
create view blabla(
  col1 int,
  col2 int,
  col3 int,
as ( select col1, col2, co
text
---------------------------------------------------------------
l3 from table1
....

我已经实现了SET PAGESIZE 10000来制作分隔符

text
---------------------------------------------------------------

消失并显示每个脚本的连续文本,但

  • 碎片!!!在上面的例子中co \ r \ nl3非常糟糕! :(

我注意到这个问题更多的是命令行每行80个字符,并且假脱机复制提示中的所有内容:(包括行尾(从结果)到实际\之间的空格r \ n; f * in crap