doc-exports/docs/dws/tool/dws_16_0102.html
Lu, Huayi 27019c2991 DWS TOOL 830.201 version
Reviewed-by: Hasko, Vladimir <vladimir.hasko@t-systems.com>
Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com>
Co-authored-by: Lu, Huayi <luhuayi@huawei.com>
Co-committed-by: Lu, Huayi <luhuayi@huawei.com>
2024-05-16 07:35:25 +00:00

84 lines
6.2 KiB
HTML

<a name="EN-US_TOPIC_0000001819336157"></a><a name="EN-US_TOPIC_0000001819336157"></a>
<h1 class="topictitle1">System Views</h1>
<div id="body8662426"><div class="section" id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_section33629715914"><h4 class="sectiontitle"><strong id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_b9510193713239">dbc.columnsV</strong> and <strong id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_b619114113234">dbc.IndicesV</strong></h4>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_table087740475" frame="border" border="1" rules="all"><thead align="left"><tr id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_row48714405716"><th align="left" class="cellrowborder" valign="top" width="50%" id="mcps1.3.1.2.1.3.1.1"><p id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_en-us_topic_0202727455_p218116135396"><strong id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_en-us_topic_0202727455_b203561841141112">Input</strong></p>
</th>
<th align="left" class="cellrowborder" valign="top" width="50%" id="mcps1.3.1.2.1.3.1.2"><p id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_p7882404716"><strong id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_en-us_topic_0202727455_b10689544161117">Output</strong></p>
</th>
</tr>
</thead>
<tbody><tr id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_row9884401578"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.3.1.2.1.3.1.1 "><pre class="screen" id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_screen38818407715">SELECT A.ColumnName AS V_COLS
,A.columnname || ' ' ||CASE WHEN columnType in ('CF','CV')
THEN CASE WHEN columnType='CV' THEN 'VAR' ELSE ''
END||'CHAR('||TRIM(columnlength (INT))||
') CHARACTER SET LATIN'||
CASE WHEN UpperCaseFlag='N'
THEN ' NOT' ELSE ''
END || ' CASESPECIFIC'
WHEN columnType='DA' THEN 'DATE'
WHEN columnType='TS' THEN 'TIMESTAMP(' || TRIM(DecimalFractionalDigits)||')'
WHEN columnType='AT' THEN 'TIME('|| TRIM(DecimalFractionalDigits)||')'
WHEN columnType='I' THEN 'INTEGER'
WHEN columnType='I1' THEN 'BYTEINT'
WHEN columnType='I2' THEN 'SMALLINT'
WHEN columnType='I8' THEN 'BIGINT'
WHEN columnType='D' THEN 'DECIMAL('||TRIM(DecimalTotalDigits)||','||TRIM(DecimalFractionalDigits)||')'
ELSE 'Unknown'
END||CASE WHEN Nullable='Y'
THEN'' ELSE' NOT NULL' END||'0A'XC AS V_ColT - ,B.ColumnName AS V_PICol -- Obtain the primary index of the target table
FROM dbc.columnsV A LEFT JOIN dbc.IndicesV B
ON A.columnName = B.columnName AND B.IndexType IN ('Q','P')
AND B.DatabaseName = '${V_TDDLDB}' AND B.tablename='${TARGET_TABLE}'
WHERE A.databasename='${V_TDDLDB}' AND A.tablename = '${TARGET_TABLE}'
AND A.columnname NOT IN ( 'ETL_JOB_NAME' ,'ETL_TX_DATE'
,'ETL_PROC_DATE'
)
ORDER BY A.columnid;</pre>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.3.1.2.1.3.1.2 "><pre class="screen" id="EN-US_TOPIC_0000001819336157__en-us_topic_0000001657865210_en-us_topic_0000001434790477_screen0883401173">DECLARE lv_mig_V_COLS TEXT;
lv_mig_V_ColT TEXT;
lv_mig_V_PICol TEXT;
BEGIN
SELECT STRING_AGG(A.ColumnName, ',')
, STRING_AGG(A.columnname || ' ' ||CASE WHEN columnType in ('CF','CV')
THEN CASE WHEN columnType='CV' THEN 'VAR' ELSE ''
END||'CHAR('||TRIM(mig_td_ext.mig_fn_castasint(columnlength))||
') /*CHARACTER SET LATIN*/'||
CASE WHEN UpperCaseFlag='N'
THEN ' NOT' ELSE ''
END || ' /*CASESPECIFIC*/'
WHEN columnType='DA' THEN 'DATE'
WHEN columnType='TS' THEN 'TIMESTAMP(' || TRIM(DecimalFractionalDigits)||')'
WHEN columnType='AT' THEN 'TIME('|| TRIM(DecimalFractionalDigits)||')'
WHEN columnType='I' THEN 'INTEGER'
WHEN columnType='I1' THEN 'BYTEINT'
WHEN columnType='I2' THEN 'SMALLINT'
WHEN columnType='I8' THEN 'BIGINT'
WHEN columnType='D' THEN 'DECIMAL('||TRIM(DecimalTotalDigits)||','||TRIM(DecimalFractionalDigits)||')'
ELSE 'Unknown'
END||CASE WHEN Nullable='Y'
THEN '' ELSE ' NOT NULL' END||E'\x0A', ',') , STRING_AGG(B.ColumnName, ',')
INTO lv_mig_V_COLS, lv_mig_V_ColT, lv_mig_V_PICol
FROM mig_td_ext.vw_td_dbc_columnsV A LEFT JOIN mig_td_ext.vw_td_dbc_IndicesV B
ON A.columnName = B.columnName AND B.IndexType IN ('Q','P')
AND B.DatabaseName = 'public' AND B.tablename='emp2'
WHERE A.databasename='public' AND A.tablename = 'emp2';
-- ORDER BY A.columnid;
END;
/
</pre>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="dws_16_0036.html">Teradata Syntax Migration</a></div>
</div>
</div>