Setting Up the SQL Delimiter on DB2

Because the file schema.sql uses a slash as a delimiter, you must set up the slash as the delimiter in the tool (SPUFI or DSNTEP2) you are using to apply the DDL. Siebel CRM provides files with slashes for delimiters because schema.sql might contain triggers for table partitioning that use semicolons. For example:

CREATE TRIGGER Q202999.PTH0393 NO CASCADE BEFORE INSERT ON Q202999.S_ACT_EMP 
REFERENCING NEW AS N FOR EACH ROW MODE DB2SQL WHEN (N.EMP_ID IS NOT NULL) BEGIN 
ATOMIC SET N.PARTITION_COLUMN=RIGHT(N.EMP_ID, 2); END /
Note: If you are not using table space partitioning, you can replace slashes with semicolons.

DSNTEP2

If you run the DDL in batch mode, use the DSNTEP2 tool. Perform the following procedure to set the delimiter in DSNTEP2.

To set the delimiter in DSNTEP2

  • Use the SQLTERM(/) parameter to set the delimiter to a slash mark. The following example illustrates how this appears in the SYSTSIN DD statement.

    Note: In the following example, Q202 is the subsystem name.
    //SYSTSIN DD * DSN SYSTEM(Q202) RUN PROGRAM(DSNTEP2) PLAN(DSNTEP71) PARMS('/SQLTERM(/)') - LIB('DSN710.RUNLIB.LOAD') END

SPUFI

If you use SPUFI, perform the following procedure to set the delimiter.

To set the SQL delimiter in SPUFI

  1. Set CHANGE DEFAULTS to YES.

  2. When the CURRENT SPUFI DEFAULTS panel appears, change the SQL TERMINATOR to a slash mark.

If you are not using triggers, you can change the slashes back to semicolons. If you use the TSO editor, do this by entering the following:

CHANGE X'61' X'5E' ALL