Definition of the CollInstallMulti Macro - Advanced SQL Engine - Teradata Database

International Character Set Support

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
July 2021
Language
English (United States)
Last Update
2021-07-28
dita:mapPath
xnf1627504141606.ditamap
dita:ditavalPath
xnf1627504141606.ditaval
dita:id
B035-1125
lifecycle
previous
Product Category
Teradata Vantageā„¢

The CollInstallMulti macro takes the codes you load into the DBC.CollationsV view and inserts them into the underlying system table as the new default collation sequence.

The :CollationName parameter you submit to the macro must match the CollName value you specified for DBC.CollationsV.

During this process, CollInstallMulti performs the following actions.

  1. Verifies that the value of :CollationName is not MULTINATIONAL.
  2. Verifies that :CollationName is found in the CollName column of DBC.CollationTbl.
  3. Deletes the row where CollName is MULTINATIONAL.
  4. Inserts (through DBC.CollationsV) a row with the following values:
    • The string MULTINATIONAL in CollName
    • The letter Y in CollInstall
    • The codes for CollEqvClass, CollOrderCS, and CollOrderUC, which are selected from the row you loaded (where CollName should be equal to :CollationName).

The SQL code for CollInstallMulti is as follows:

   REPLACE MACRO CollInstallMulti (CollationName CHAR(30)) AS
   ( ABORT 'Argument cannot be MULTINATIONAL collation'
   WHERE :CollationName = 'MULTINATIONAL';
   ABORT 'Specified collation has not been defined'
   WHERE :CollationName NOT IN
   ( SELECT CollName
   FROM DBC.CollationsV );
   DELETE FROM DBC.CollationsV
   WHERE CollName = 'MULTINATIONAL';
   INSERT INTO DBC.CollationsV
   SELECT 'MULTINATIONAL', 'Y', CollEqvClass,
   CollOrderCS, CollOrderUC
   FROM DBC.CollationsV
   WHERE CollName = :CollationName; );