计算由 UTL_FILE 创建的文件中的行数
Posted
技术标签:
【中文标题】计算由 UTL_FILE 创建的文件中的行数【英文标题】:Calculating number of rows in a file created by UTL_FILE 【发布时间】:2021-03-12 11:02:41 【问题描述】:我有一个 PLSQL 包,它将 Oracle 表中的提取内容写到多个文件中。每个文件最多可以有 50000000 行。通常,会创建 5 或 6 个此类文件。我正在使用 UTL_FILE 功能来创建这些提取文件。
我需要将生成的文件名和生成文件中的行数记录到 Oracle 表中。
我可以记录文件名,但如何记录导出到文件的行数?
【问题讨论】:
【参考方案1】:怎么样?一一数一数。
创建一个局部变量 在每次UTL_FILE.put_line
调用后增加它
完成后记录
我刚刚测试过,输出(DBMS_OUTPUT.PUT_LINE
的结果)看起来像例如
ocit_4001_1.txt: 37465 row(s)
ocit_4001_2.txt: 37464 row(s)
ocit_4001_3.txt: 37462 row(s)
【讨论】:
以上是关于计算由 UTL_FILE 创建的文件中的行数的主要内容,如果未能解决你的问题,请参考以下文章
在不使用 UTL_FILE 的情况下从 PL/SQL 中的文件读取/写入数据