Start of change

-4739   ENVIRONMENT SETTINGS (IDENTIFIED BY envid1) USED BY object-name ARE NOT THE SAME AS THE ONES THAT WERE IN EFFECT (IDENTIFIED BYenvid2) WHEN OTHER COLUMN MASKS AND ROW PERMISSIONS WERE DEFINED FOR TABLE table-name

Explanation

A CREATE MASK or CREATE PERMISSIONS statement was issued with environment settings that do not match the settings that were previously used. All column masks and row permissions defined for the same table must use the same set of environment settings. The set of environment settings is determined when the first column mask or row permission is defined for the table. To create a new column mask or row permission, the environment settings in effect when the CREATE statement is issued must be the same as the environment set.

envid1
The environment settings that are used by the object that is identified by object-name.
object-name
The name of the object.
envid2
The environment settings that were in use when existing column masks and row permissions were defined for the table that is identified by table-name.
table-name
The name of the table.

The SYSIBM.SYSENVIRONMENT catalog table contains the list of environment settings. The following set of environment settings must be the same among the multiple column masks and row permissions that are defined for a single table:

  • ENVID
  • CURRENT_SCHEMA
  • PATHSCHEMAS
  • APPLICATION_ ENCODING_ CCSID
  • ORIGINAL_ ENCODING_ CCSID
  • DECIMAL_POINT
  • MIN_DIVIDE_SCALE
  • SQL_STRING_ DELIMITER
  • MIXED_DATA
  • DECIMAL_ARITHMETIC
  • DATE_FORMAT
  • TIME_FORMAT
  • ROUNDING

System action

The statement cannot be processed.

Programmer response

Use the values of envid1 and envid2 in the SQL error message to query the SYSIBM.SYSENVIRONMENT catalog table to locate the expected environment setting values. Correct the syntax, and reissue the statement.

SQLSTATE

530A4

End of change