TPT Selector is producer operator which has features on available in Export operator, this can be used to export LOB columns as well.
TPT Selector Characteristics:Producer_Query_Detail: TPT10327: Multiple instances are not supported
DEFINE JOB EXPORT_EMPLOYEE_DATA
DESCRIPTION 'Exports employee data to a delimited file using Selector'
(
DEFINE OPERATOR Consumer_File_Detail
DESCRIPTION 'Defining a consumer operator for storing retrieved data to a file'
TYPE DATACONNECTOR CONSUMER
SCHEMA *
ATTRIBUTES
(
VARCHAR FileName='/Users/username/Desktop/emp_selector_delimited.out',
VARCHAR FORMAT= 'DELIMITED',
VARCHAR TextDelimiter= '|~|',
VARCHAR OpenMode='Write'
);
DEFINE SCHEMA Define_Employee_Schema
DESCRIPTION 'Defining a Schema to describe the structure of the output file'
(
emp_no INTEGER,
ename_name VARCHAR(50),
hire_date ANSIDATE
);
DEFINE OPERATOR Selector_operator
TYPE SELECTOR
SCHEMA Define_Employee_Schema
ATTRIBUTES
(
VARCHAR TdPid='TDServer',
VARCHAR UserName='tutorial_user',
VARCHAR UserPassWord='tutorial_password',
VARCHAR SelectStmt = 'SELECT emp_no,ename_name,hire_date FROM tutorial_db.emp_unformatted;',
VARCHAR DateForm='AnsiDate'
);
APPLY
TO OPERATOR( Consumer_File_Detail )
SELECT * FROM OPERATOR( Selector_operator[1] );
);
DEFINE JOB EXPORT_EMPLOYEE_DATA
DESCRIPTION 'Exports employee data to a formatted file using EXPORT'
(
DEFINE OPERATOR Consumer_File_Detail
DESCRIPTION 'Defining a consumer operator for storing retrieved data to a file'
TYPE DATACONNECTOR CONSUMER
SCHEMA *
ATTRIBUTES
(
VARCHAR FileName='/Users/username/Desktop/emp_selector_delimited_clob.out',
VARCHAR FORMAT= 'DELIMITED',
VARCHAR TextDelimiter= '|~|',
VARCHAR OpenMode='Write'
);
DEFINE SCHEMA Define_Employee_Schema
DESCRIPTION 'Defining a Schema to describe the structure of the output file'
(
emp_no INTEGER,
ename_name CLOB AS DEFERRED BY NAME,
hire_date ANSIDATE
);
DEFINE OPERATOR Selector_operator
TYPE SELECTOR
SCHEMA Define_Employee_Schema
ATTRIBUTES
(
VARCHAR TdPid='TDServer',
VARCHAR UserName='tutorial_user',
VARCHAR UserPassWord='tutorial_password',
VARCHAR SelectStmt = 'SELECT emp_no,CAST(ename_name AS CLOB),hire_date FROM tutorial_db.emp_formatted_clob;',
INTEGER MaxSessions=6,
INTEGER minsessions=3,
VARCHAR DateForm='AnsiDate'
);
APPLY
TO OPERATOR( Consumer_File_Detail )
SELECT * FROM OPERATOR( Selector_operator[1] );
);
Points to be Noted:
TPT_INFRA: TPT02638: Error: Conflicting data length for column(2) - ename_name. Source column's data length (64000) Target column's data length (2097088000).
1000262|~|/Users/username/clob_data/clob_data_test_ename_name_pradeep.khatri-123_p1_r1.out|~|1981-06-09 1000294|~|/Users/username/clob_data/clob_data_test_ename_name_pradeep.khatri-123_p1_r2.out|~|1980-12-17
tbuild -f tpt_selector.tpt
tbuild -f tpt_selector_clob.tpt