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 (
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:
If columns have been dropped or data types have been changed, performing the macro can result in an error message or unexpected behavior.