UNICODE PASS THROUGH Functionality | Teradata VantageCloud Lake - UNICODE PASS THROUGH Functionality - Teradata VantageCloud Lake

Lake - Database Reference

Deployment
VantageCloud
Edition
Lake
Product
Teradata VantageCloud Lake
Release Number
Published
February 2025
ft:locale
en-US
ft:lastEdition
2025-11-21
dita:mapPath
ohi1683672393549.ditamap
dita:ditavalPath
pny1626732985837.ditaval
dita:id
ohi1683672393549
UNICODE PASS THROUGH (UPT) provides the following functionality in pass through sessions:
  • Proper storage of all assigned and unassigned Unicode characters from U+0000 to U+10FFFD.
  • Ability to store pass through characters (PTCs) in Unicode columns as data and retrieve the characters as entered. For example:
    INSERT INTO currency (U&'#20BD' UESCAPE '#');
  • Ability to use PTCs in queries. For example:
    SELECT feed FROM twitter WHERE feed LIKE U&'%#+01F602%' UESCAPE '#';
  • Noncharacters and ill-formed code unit sequences are changed to the REPLACEMENT CHARACTER (U+FFFD) which can pass through and be stored in Teradata.

With UPT enabled, users can expect translation errors to be reduced or eliminated.

Example: Using Pass Through Character Literals

This example shows how you can use pass through character (PTC) literals in a session with Unicode Pass Through enabled. The PTC literals are emoji characters, and the session character set is UTF16.

To run these examples, replace the emoji graphics with the corresponding Unicode code points (such as U+1F601) inserted using your client application.

/**********************************************************************/
/* Enable Unicode Pass Through                                        */
/**********************************************************************/

SET SESSION CHARACTER SET UNICODE PASS THROUGH ON;
/**********************************************************************/
/* CREATE TABLE                                                       */
/**********************************************************************/

CREATE TABLE upt_tbl0
(
  col1    INTEGER,
  col2    VARCHAR(6) CHARACTER SET UNICODE
) UNIQUE PRIMARY INDEX (col1);
/**********************************************************************/
/* Insert Pass Through Characters into the table                      */
/**********************************************************************/

/* U+1F601 = GRINNING FACE WITH SMILING EYES */

INSERT INTO upt_tbl0 VALUES (1, ' ');

/* U+1F602 = FACE WITH TEARS OF JOY */

INSERT INTO upt_tbl0 VALUES (2, ' ');

/* U+1F603 = SMILING FACE WITH OPEN MOUTH */

INSERT INTO upt_tbl0 VALUES (3, ' ');

/* U+1F604 = SMILING FACE WITH OPEN MOUTH AND SMILING EYES */

INSERT INTO upt_tbl0 VALUES (4, ' ');

/* U+1F605 = SMILING FACE WITH OPEN MOUTH AND COLD SWEAT */

INSERT INTO upt_tbl0 VALUES (5, ' ');

/**********************************************************************/
/* DISPLAY ROWS                                                       */
/**********************************************************************/

SELECT ' ';

Result:

' '

-----

SELECT * FROM upt_tbl0 WHERE col2 = ' ';

Result:



SELECT * FROM upt_tbl0 ORDER BY col2;

Result: