« ociuldr小工具的新选项, 指定log文件 »
Tools » http://www.anysql.net/tools/ociuldr_option_logfile.html 2007-05-11ociuldr工具(文档)越来越被人接受, 还有一位外国人特意发邮件来告诉我说, 他成功地将这个工具用于一个项目中. 即使是小工具, 也需要花不少时间去完善和维护的. 今天为这个工具新增了一个小选项:
log = log file name, prefix with + to append mode
用法如下:
ociuldr user=ansyql/anysql@s8i query="select * from tab" log=tab.log
ociuldr user=ansyql/anysql@s8i query="select * from tab" log=+tab.log
指定log选项后, 运行ociuldr后将不会在屏幕上打印出log信息. 如果在文件名之前有加号, 表示将log信息添加在文件最后, 否则是覆盖. 这个参数有利于将ociuldr作为一个job来运行, 用追加模式, 方便查找错误.
欢迎使用更新后的版本, 可下载源代码自行编译, 我只提供Windows平台的可执行文件.


cool!
如果我的 SQL SELECT 语句很长, 怎么办?
可不可以像 exp/imp 一样指定.par 参数文件
这样我们就可以输入肯长的参数了,比如特长SQL.
–
我是用以下 spool 生成 .csv 文件的.
用的是最原始的 column_name||’,'||column_name:
sqlplus -S system/nc8000 0
)
select time_id||’,'|| sellerid||’,'|| uo||’,'|| fo||’,'|| ro||’,'|| sr_rate||’,'||
case
when tot_ord
ociuldr sql=文件.sql …
warm/cool!
That’s great! 再次表达衷心感谢!
才把 ociuldr工具 使用指南读了一遍,(上个问题”该打”)
有没有一个像External Table 或 SQL*Loader里面
定义双引号,表示字符串的选项:
OPTIONALLY ENCLOSED BY ‘”‘
这个已经有了,
fields terminated BY ‘,’
事实上, 遇到这种情况, 我偏向于改字段分隔符和记录分隔符, 而不是两头加上双引号.
我同意你的喜好/倾向,
可是csv格式就是这么定义的,已经被强制了, 他xx的. ^_^
问题 2)
如果 SQL SELECT 文件能带参数就更好了.
比如 sqlplusw scott/tiger @my.sql 101 BEIJING
cat my.sql
–
select * from sales
where customer_id = &1
and city = ‘&2′;
–
Work around:
就是使用 PL/SQL Function 代替变量.
1)
DBMS_SESSION.SET_CONTEXT() and SYS_CONTEXT.
2) 自定义函数, 设置变量,和返回变量值.
今天我们同事又提了另一个建议,
希望第一行打印题头, 就是所有列名.
还有个问题,
“有了的建议, 请你告诉我”
我有了的建议, 却不知道该写在哪里,
你创建一个Wiki就好了, 专门用来收集建议.
3)
想学习C*OCI, 有推荐的学习指南吗, 入门级就足够了.
有十多年没写过C程序了,再捡起来.
多谢.
To Zhu1:
你为什么看文档如此不仔细呢? 这个功能早就有了. 在相关文章的那儿有链接啊.