DECLARE
CURSOR cur_lcy_test IS
SELECT rcta.customer_trx_id, rcta.trx_number, rcta.trx_date
FROM ra_customer_trx_all rcta
WHERE rcta.customer_trx_id = 11993;
--
rec_lcy_test cur_lcy_test%ROWTYPE;
--
w_csv_line_num NUMBER := 0;
TYPE tbl_varchar2 IS TABLE OF VARCHAR2(4000) INDEX BY BINARY_INTEGER;
w_rec_data tbl_varchar2;
w_separator VARCHAR2(1) := ',';
w_file_name xxifc_if_file_status.if_file_name%TYPE; -- ファイル名
w_utl_file_type utl_file.file_type;
w_flag VARCHAR2(20) DEFAULT NULL;
w_rec_count NUMBER DEFAULT 0;
w_loop_num NUMBER DEFAULT 0;
w_file_path VARCHAR2(2000) DEFAULT NULL;
w_filename utl_file.file_type;
--
c_open_mode_read CONSTANT VARCHAR2(2000) := 'r';
c_open_mode_write CONSTANT VARCHAR2(2000) := 'w';
c_true CONSTANT VARCHAR2(2000) := 'TRUE';
c_false CONSTANT VARCHAR2(2000) := 'FALSE';
--
BEGIN
OPEN cur_lcy_test;
<<get_lcy_test_loop>>
LOOP
FETCH cur_lcy_test
INTO rec_lcy_test;
EXIT WHEN cur_lcy_test%NOTFOUND;
--
w_csv_line_num := w_csv_line_num + 1;
w_rec_data(w_csv_line_num) := xxcmpz11.func_make_qt2_str(to_char(rec_lcy_test.customer_trx_id)) ||
w_separator ||
xxcmpz11.func_make_qt2_str(to_char(rec_lcy_test.trx_number)) ||
w_separator ||
xxcmpz11.func_make_qt2_str(to_date(rec_lcy_test.trx_date,
'yyyy/mm/dd'));
--
END LOOP get_lcy_test_loop;
--
w_file_name := 'LCY_WRITE_FILE_TEST.csv';
w_file_path := 'XXIF_OUTPUT'; --all_directories.directory_name
BEGIN
w_utl_file_type := utl_file.fopen(location => w_file_path,
filename => w_file_name,
open_mode => c_open_mode_read,
max_linesize => 32767);
w_flag := c_true;
utl_file.fclose(file => w_utl_file_type);
EXCEPTION
WHEN OTHERS THEN
w_flag := c_false;
END;
IF (w_flag = c_true) THEN
dbms_output.put_line('w_flag');
END IF;
--
w_rec_count := w_rec_data.count;
--
w_utl_file_type := utl_file.fopen(location => w_file_path,
filename => w_file_name,
open_mode => c_open_mode_write,
max_linesize => 32767);
--
<<user_file_line_loop>>
FOR w_loop_num IN 1 .. w_rec_count LOOP
utl_file.put_line(file => w_utl_file_type,
buffer => convert(w_rec_data(w_loop_num),
'JA16SJIS',
'UTF8')); --改动
END LOOP user_file_line_loop;
-- ファイルのクローズ
IF (utl_file.is_open(file => w_utl_file_type)) THEN
utl_file.fclose(file => w_utl_file_type);
END IF;
--
--w_filename := utl_file.fopen(c_location, c_bat_name, 'a'); --utl_file.put_line(w_filename,
-- convert('ren ' || w_file_name || ' ' || replace(w_file_name,' ','')||chr(13),
-- 'JA16SJIS',
-- 'UTF8'));
--utl_file.fflush(w_filename);
--utl_file.fclose(w_filename); --
CLOSE cur_lcy_test;
END;

SQL Script for select data from ebs and make a csv file to FTP的更多相关文章

  1. SQL Script for read information from a csv file in FTP Server

    DECLARE w_file_path VARCHAR2(4000) := 'XXIF_INPUT'; --all_directories.directory_name w_file_name VAR ...

  2. 可重复执行的SQL Script

    问题 在工作中偶尔会遇到这样的问题:SQL script重复执行时会报错. 理想的状态下,SQL script跑一遍就够了,是不会重复执行的,但是实际情况往往很复杂. 比如Dev同学在开发时在A环境把 ...

  3. MySQL5.7: sql script demo

    -- MyISAM Foreign Keys显示不了外键,MyISAM此为5.0 以下版本使用 InnoDB 为5.0以上版本使用 drop table IF EXISTS city; CREATE ...

  4. SQLite: sql script demo

    如果有成熟的架构,如何根据数据库关系的表.视图等,进行代码生成架构?减少写代码的时间? -- 考虑主键外键 -- create database geovindu; use geovindu; --2 ...

  5. doris: shell invoke .sql script for doris and passing values for parameters in sql script.

    1. background in most cases, we want to execute sql script  in doris  routinely. using azkaban, to l ...

  6. 使用redis+lua实现SQL中的select intersect的效果

    公众号文章地址 1.需求 业务中需要实现在两个集合中搜索数据,并返回交集. 用SQL的伪代码可以描述如下: select key from set1 where sorted_key between ...

  7. [ORACLE错误]oracle 不能更新 PL/SQL 点击“edit data”报“ these query results are not updateable”

    你可以选择在查询语句的最后加上 for update,就可以打开编辑锁,直接修改数据. 而在默认查询下,点击Edit data,会报错:The query results are not update ...

  8. 浅析基于微软SQL Server 2012 Parallel Data Warehouse的大数据解决方案

    作者 王枫发布于2014年2月19日 综述 随着越来越多的组织的数据从GB.TB级迈向PB级,标志着整个社会的信息化水平正在迈入新的时代 – 大数据时代.对海量数据的处理.分析能力,日益成为组织在这个 ...

  9. 转:浅析基于微软SQL Server 2012 Parallel Data Warehouse的大数据解决方案

    综述 随着越来越多的组织的数据从GB.TB级迈向PB级,标志着整个社会的信息化水平正在迈入新的时代 – 大数据时代.对海量数据的处理.分析能力,日益成为组织在这个时代决胜未来的关键因素,而基于大数据的 ...

随机推荐

  1. SOCKET简单爬虫实现代码和使用方法

    抓取一个网页内容非常容易,常见的方式有curl.file_get_contents.socket以及文件操作函数file.fopen等. 下面使用SOCKET下的fsockopen()函数访问Web服 ...

  2. hdu 4438 第37届ACM/ICPC 天津赛区现场赛H题

    题意:Alice和Bob两个人去打猎,有两种(只)猎物老虎和狼: 杀死老虎得分x,狼得分y: 如果两个人都选择同样的猎物,则Alice得分的概率是p,则Bob得分的概率是(1-p): 但是Alice事 ...

  3. logstash高速入口

    原文地址:http://logstash.net/docs/1.4.2/tutorials/getting-started-with-logstash 英语水平有限,假设有错误请各位指正 简单介绍 L ...

  4. 重读JavaScript高级程序设计

    不断更新中--- 第三章 基本概念 1.变量声明但未初始化值是undefined,而未声明的变量只能执行typeof操作,并且未初始化和未声明用typeof都同样返回undefined 2.Numbe ...

  5. Delphi 资源管理器套件

    需要个类似资源管理器的东西, 首先试了下 TDriveComboBox.TDirectoryListBox.TFileListBox, 嘿! Win31 时代的东西, 不是一般地丑. 试了下 Vcl. ...

  6. HDU 4768 Flyer (2013长春网络赛1010题,二分)

    Flyer Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  7. UVA 11732 - strcmp() Anyone?(Trie)

    UVA 11732 - strcmp() Anyone? 题目链接 题意:给定一些字符串,要求两两比較,须要比較的总次数(注意.假设一个字符同样.实际上要还要和'\0'比一次,相当比2次) 思路:建T ...

  8. shu_1016 栈

    cid=1079&pid=2">http://202.121.199.212/JudgeOnline/problem.php?cid=1079&pid=2 分析: Ca ...

  9. IAR EWAR 内联汇编 Error[Og010], Error [Og005], Error [Og006]

    Error [Og005] + [Og006] when using inline assembler EW targets: 430, ARM, AVR EW component: C/C++ co ...

  10. Ubuntu 中启用 root 帐号

    参考:http://linuxtoy.org/archives/howto_enable_ubuntu_root_account.html 如果你实在需要在 Ubuntu 中启用 root 帐号的话, ...