Ejemplos de copia de restricciones

Estos ejemplos muestran el DDL que se genera al copiar restricciones entre bases de datos heterogéneas.

El DDL generado se muestra en la página Vista previa de DDL del asistente Pegar objetos de base de datos.

La Tabla 1 muestra ejemplos del DDL que se genera para copiar restricciones de una base de datos de origen DB2 Versión 9.7 para Linux®, UNIX® y Windows® en una base de datos de destino DB2 Versión 9.1 para z/OS

Tabla 1. Ejemplos de copia de restricciones de DB2 Versión 9.7 para Linux, UNIX y Windows en una base de datos DB2 Versión 9.1 para z/OS
Definición de restricciones de DB2 Versión 9.7 para Linux, UNIX y Windows DDL generado para la base de datos DB2 Versión 9.1 para z/OS
CREATE TABLE test2
  (col1 CHAR(20) NOT NULL
	)
  DATA CAPTURE NONE 
  IN USERS;


ALTER TABLE test2
   ADD CONSTRAINT pk_test1
   PRIMARY KEY (col1); 
CREATE TABLE NEWTON.TEST2
  (COL1 CHAR(20) NOT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE NEWTON.TEST2
   ADD CONSTRAINT PK_TEST1
   PRIMARY KEY (COL1);
CREATE TABLE test4
  (col1 CHAR(20) NOT NULL
  )
  DATA CAPTURE NONE 
  IN USERS;


ALTER TABLE test4
   ADD CONSTRAINT uq_test1 UNIQUE (col1);
CREATE TABLE NEWTON.TEST4
  (COL1 CHAR(20) NOT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE NEWTON.TEST4
   ADD CONSTRAINT UQ_TEST1 UNIQUE (COL1);
CREATE TABLE test8
  (col1 CHAR(20) NOT NULL
  )
  DATA CAPTURE NONE 
  IN USERS;


ALTER TABLE test8
   ADD CONSTRAINT chck_test1
   CHECK (col1 > '00060');
CREATE TABLE NEWTON.TEST8
  (COL1 CHAR(20) NOT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE NEWTON.TEST8
   ADD CONSTRAINT CHCK_TEST1
   CHECK (COL1 > '00060');
CREATE TABLE test15
  (col1 CHAR(20) NOT NULL
  )
  DATA CAPTURE NONE 
  IN USERS;


ALTER TABLE test15
   ADD CONSTRAINT ref_test1
   FOREIGN KEY (col1)
   REFERENCES test2 (col1);
CREATE TABLE NEWTON.TEST15
  (COL1 CHAR(20) NOT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE NEWTON.TEST15
   ADD CONSTRAINT REF_TEST1
   FOREIGN KEY (COL1)
   REFERENCES NEWTON.TEST2 (COL1);
CREATE TABLE test11b
  (col1 CHAR(20)
  )
  DATA CAPTURE NONE 
  IN USERS;


ALTER TABLE test11b
   ADD CONSTRAINT ref_test4
   FOREIGN KEY (col1)
   REFERENCES test2 (col1)
   ON DELETE CASCADE;
CREATE TABLE NEWTON.TEST11B
  (COL1 CHAR(20)
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE NEWTON.TEST11B
   ADD CONSTRAINT REF_TEST4
   FOREIGN KEY (COL1)
   REFERENCES NEWTON.TEST2 (COL1)
   ON DELETE CASCADE;

La Tabla 2 muestra ejemplos del DDL que se genera para copiar restricciones de una base de datos de origen DB2 Versión 9.1 para z/OS en una base de datos de destino DB2 Versión 9.7 para Linux, UNIX y Windows.

Tabla 2. Ejemplos de copia de restricciones de una base de datos DB2 Versión 9.1 para z/OS en una base de datos DB2 Versión 9.7 para Linux, UNIX y Windows
Definición de restricciones de la base de datos DB2 Versión 9.1 para z/OS DDL generado para DB2 Versión 9.7 para Linux, UNIX y Windows
CREATE TABLE test2z
  (col1 CHAR(20) NOT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE test2z
   ADD CONSTRAINT pk_test1
   PRIMARY KEY (col1);
CREATE TABLE DB2ADMIN.TEST2Z
  (COL1 CHAR(20) NOT NULL
  )
  DATA CAPTURE NONE;



ALTER TABLE DB2ADMIN.TEST2Z
   ADD CONSTRAINT PK_TEST1
   PRIMARY KEY (COL1);
CREATE TABLE test4z
  (col1 CHAR(20) NOT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE test4z
   ADD CONSTRAINT uq_test1 UNIQUE (col1);
CREATE TABLE DB2ADMIN.TEST4Z
  (COL1 CHAR(20) NOT NULL
  )
  DATA CAPTURE NONE;



ALTER TABLE DB2ADMIN.TEST4Z
   ADD CONSTRAINT UQ_TEST1 UNIQUE (COL1);
CREATE TABLE test8z
  (col1 CHAR(20) NOT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE test8z
   ADD CONSTRAINT chck_test1
   CHECK (col1 > '00060');
CREATE TABLE DB2ADMIN.TEST8Z
  (COL1 CHAR(20) NOT NULL
  )
  DATA CAPTURE NONE;



ALTER TABLE DB2ADMIN.TEST8Z
   ADD CONSTRAINT CHCK_TEST1
   CHECK (COL1 > '00060');
CREATE TABLE test15z
  (col1 CHAR(20) NOT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE test15z
   ADD CONSTRAINT ref_test1
   FOREIGN KEY (col1)
   REFERENCES test2z (col1);
CREATE TABLE DB2ADMIN.TEST15Z
  (COL1 CHAR(20) NOT NULL
  )
  DATA CAPTURE NONE;



ALTER TABLE DB2ADMIN.TEST15Z
   ADD CONSTRAINT REF_TEST1
   FOREIGN KEY (COL1)
   REFERENCES DB2ADMIN.TEST2Z (COL1);
CREATE TABLE test11bz
  (col1 CHAR(20) WITH DEFAULT NULL
  )
  AUDIT NONE
  DATA CAPTURE NONE 
  CCSID EBCDIC;

ALTER TABLE test11bz
   ADD CONSTRAINT ref_test4
   FOREIGN KEY (col1)
   REFERENCES test2z (col1)
   ON DELETE CASCADE;
CREATE TABLE DB2ADMIN.TEST11BZ
  (COL1 CHAR(20) DEFAULT NULL
  )
  DATA CAPTURE NONE;



ALTER TABLE DB2ADMIN.TEST11BZ
   ADD CONSTRAINT REF_TEST4
   FOREIGN KEY (COL1)
   REFERENCES DB2ADMIN.TEST2Z (COL1)
   ON DELETE CASCADE;

Comentarios