consultas db2 nullable alter non-nullable notnull

consultas db2



Haga que una columna sea anulable en DB2 cuando la captura de datos está habilitada (3)

ALTER TABLE TABLE_NAME ALTER COLUMN COLUMN_NAME DROP NOT NULL;

Funciona en DB2 9.7 y superior. Sin embargo, es posible que desee realizar una reorganización de tabla (en 9.7 db2 pone la tabla en estado de reorganización pendiente, lo mismo en 10.5 FP 5 también):

llame a sysproc.admin_cmd (''tabla de reorganización TABLE_NAME'');

Estoy usando db2 versión 9.7 * y parece imposible que una columna NOT NULL sea anulable de una manera directa.

Desafortunadamente, la solución de usar una base de datos más amigable para desarrolladores no está disponible. Básicamente, en MySQL, quiero hacer algo como esto (donde MY_COLUMN solía ser VARCHAR (200) NOT NULL):

ALTER TABLE MY_TABLE MODIFY COLUMN MY_COLUMN VARCHAR(200);


Mi consulta final terminó algo como esto:

ALTER TABLE MY_TABLE DATA CAPTURE NONE; ALTER TABLE MY_TABLE ALTER MY_COLUMN DROP NOT NULL; ALTER TABLE MY_TABLE DATA CAPTURE CHANGES;


la documentation dice que ALTER TABLE tiene la posibilidad de DROP NOT NULL