15.00 - Using the ASTERISK (*) Character in Macros - Teradata Database

Teradata Database SQL Data Definition Language Detailed Topics

Teradata Database
Release Number
Content Type
Programming Reference
Publication ID
English (United States)

Using the ASTERISK (*) Character in Macros

A macro defined using the ASTERISK (*) character is forever bound to the definitions of any tables it references as they were defined at the time the macro was created or replaced.

For example, consider the following macro:

     CREATE MACRO get_emp AS (
       SELECT * 
       FROM employee;)

If a column is later added to or removed from the employee table, the following statement still returns the number of columns that existed in employee when get_emp was defined:

     EXEC get_emp;

If columns have been dropped or data types have been changed, performing the macro can result in an error message or unexpected behavior.