How can I get the number of rows inserted?

I'm working with CSV files to load my Teradata database with .tpt files in Unix. Is there any method to get the number of rows inserted on my tables? Like with any assistant, typical message X Rows Inserted. What I want is to get that X. Thanks. Here is the code of one of my .tpt files:

DEFINE JOB X_1
DESCRIPTION 'LOADING OF TABLE TABLE_1'
(
    DEFINE SCHEMA X_1
    (
        _FIELD_1            VARCHAR(8)
        ,_FIELD_2   VARCHAR(20)
        ,_FIELD_3       VARCHAR(20)
    );

    DEFINE OPERATOR DDL_OPERATOR
    TYPE DDL_OPERATOR
    ATTRIBUTES
    (
        VARCHAR PrivateLogName      = 'ddl_log'
        ,VARCHAR TdpId              = @jobvar_TDP
        ,VARCHAR UserName           = @jobvar_username
        ,VARCHAR UserPassword       = @jobvar_password
        ,VARCHAR QueryBandSessInfo  = @jobvar_QBSessInfo
        ,VARCHAR ErrorList          = '3807'
    );

    DEFINE OPERATOR FILE_READER
    TYPE DATACONNECTOR PRODUCER
    SCHEMA X_1
    ATTRIBUTES
    (
        VARCHAR PrivateLogName      = 'dataconnector_log'
        ,VARCHAR DirectoryPath      = @jobvar_datafiles_path
        ,VARCHAR FileName           = @jobvar_file_load
        ,VARCHAR Format             = 'Delimeted'
        ,VARCHAR TextDelimeter      = '|'
        ,INTEGER SkipRows           = 1
        ,VARCHAR OpenMode           = 'Read'
    );

    DEFINE OPERATOR LOAD_OPERATOR
    Type LOAD
    SCHEMA *
    ATTRIBUTES
    (
        VARCHAR PrivateLogName      = 'load_op_log'
        ,VARCHAR TdpId              = @jobvar_TDP
        ,VARCHAR UserName           = @jobvar_username
        ,VARCHAR UserPassword       = @jobvar_password
        ,INTEGER MaxSessions        = @jobvar_maxsessions
        ,INTEGER ErrorLimit         = 1
        ,VARCHAR Targettable        = @jobvar_tgt_dbname || '.TABLE_1'
        ,VARCHAR LogTable           = @jobvar_tgt_dbname || '.LG_TABLE_1'
        ,VARCHAR ErrorTable1        = @jobvar_tgt_dbname || '.ET_TABLE_1'
        ,VARCHAR ErrorTable2        = @jobvar_tgt_dbname || '.UV_TABLE_1'
    );

    STEP Setup_Tables
    (
        APPLY
            ('DROP TABLE    ' || @jobvar_tgt_dbname || '.ET_TABLE_1;'),
            ('DROP TABLE    ' || @jobvar_tgt_dbname || '.LG_TABLE_1;'),
            ('DROP TABLE    ' || @jobvar_tgt_dbname || '.UV_TABLE_1;'),
            ('DROP TABLE    ' || @jobvar_tgt_dbname || '.TABLE_1;'),
            ('CREATE MULTISET TABLE ' || @jobvar_tgt_dbname || '.TABLE_1
            (
                FIELD_1 VARCHAR(8) CHARACTER SET LATIN NOT CASESPECIFIC NOT NULL,
                FIELD_2 VARCHAR(20) CHARACTER SET LATIN NOT CASESPECIFIC NOT NULL,
                FIELD_3 VARCHAR(20) CHARACTER SET LATIN NOT CASESPECIFIC NOT NULL
            )PRIMARY INDEX(FIELD_1, FIELD_2, FIELD_3);'
            )
        TO OPERATOR (DDL_OPERATOR);
    );
    STEP Load_TABLE_1_Table
    (
        APPLY
            ('INSERT INTO ' || @jobvar_tgt_dbname || '.TABLE_1
            (
                FIELD_1
                ,FIELD_2
                ,FIELD_3
            )
            VALUES
            (
                _FIELD_1
                ,_FIELD_2
                ,_FIELD_3
            )
            ;')

    )
)

Upvotes: 0

Views: 480

Answers (1)

dnoeth
dnoeth

Reputation: 60472

You can extract information from the TPT log file for the job using the -f TWB_EVENTS for tlogview (For the Insert Count grep for LoadRowsInserted). Check the chapter on Operational Metadata in the TPT User Guide.

Depending on your Teradata release and the QueryLog setup you might find job details in the dbc.QryLogUtilityV view, too.

Upvotes: 1

Related Questions