oracle - 如何从 UTL_RAW.CAST_TO_VARCHAR2 函数输出固定长度值?
问题描述
我正在使用 UTL_RAW.CAST_TO_VARCHAR2 将我的日期转换为 ASCII 值,然后将此值写入文本文件。
fl_rcrd :=
'03'
|| RPAD (' ', 23)
|| RPAD(UTL_RAW.CAST_TO_VARCHAR2 ('0' ||TO_CHAR (date_var, 'yyyymmdd') || 'C'),55)
|| code_var
|| RPAD (' ', 79);
UTL_FILE.PUTF (fl_handle, fl_rcrd || '\n');
这里 date_var 应该在第 26 位输出,带填充的总长度应该是 55,code_var 应该在第 81 位打印。但是 date_var 出现在第 84 位,这意味着这条线RPAD(UTL_RAW.CAST_TO_VARCHAR2 ('0' ||TO_CHAR (date_var, 'yyyymmdd') || 'C'),55)
的总长度是 58 而不是 55。
在使用 UTL_RAW.CAST_TO_VARCHAR2 函数时不了解如何限制输出的长度?
解决方案
推荐阅读
- spring-batch - Spring Batch ORA-08177: 无法为 BATCH_JOB_INSTANCE 序列化此事务的访问
- r - 最小化 ROC 曲线下的面积以优化具有 optim 的多项式预测器的参数
- angular - Angular:如何在使用 addEventListener 添加的 eventHandler 函数中访问本地组件 var
- javascript - SortableJS - 不能将项目排除在可拖动和可排序之外
- ios - 在方法签名中使用子类的 Objective-C 协议一致性
- c++ - 第二个显卡的空输出信息列表
- python - 交换列表
- javascript - vue js安装的生命周期挂钩内的getElementById导致null
- java - 在java中制作返回当前颜色的蓝紫色彩虹的最佳方法是什么?
- java - AWS SAM 无法访问在 Github 包上发布的 Maven 包