add and delete Table Colums in Enterprise Replication

 

INFORMIXSERVER (goran, zav02v01) erhalten in der Tabelle (baum) ein neuen Colums (breite), diese muss den Informix Enterprise Replication bekannt gegeben werden.

 

Hinzufügen

  • Replicate hat noch keine Columns “breite”.

ZAV02V01@informix[goran]:cdr list repl brief GB_goran_53_3_baum

 REPLICATE            TABLE                                    SELECT
----------------------------------------------------------------------------
GB_goran_53_3_baum   asb4001t@goran_grp:informix.baum         select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe from baum
GB_goran_53_3_baum   asb4001t@zav02v01_grp:informix.baum      select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe from baum

ZAV02V01@informix[goran]:echo "info columns for baum" |dbaccess asb4001t

Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes

 

 

  • Columns auf beiden Nodes anlagen.

ZAV02V01@informix[goran]:echo "alter table baum add breite CHAR(30)"|dbaccess asb4001

ZAV02V01@informix[zav02v01]:echo "alter table baum add breite CHAR(30)"|dbaccess asb4001

 Database selected.
Table altered. 
Database closed.

ZAV02V01@informix[goran]:echo "info columns for baum" |dbaccess asb4001t

Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes
breite               char(30)                                yes

ZAV02V01@informix[goran]:cdr list repl brief GB_goran_53_3_baum

 
REPLICATE            TABLE                                    SELECT
----------------------------------------------------------------------------
GB_goran_53_3_baum   asb4001t@goran_grp:informix.baum         select  baumnr , baumname , baumanschrift , layout
 , ausehen , ** hoehe ** from baum
GB_goran_53_3_baum   asb4001t@zav02v01_grp:informix.baum      select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe from baum

 

 

  • Mit “cdr remaster” alle Columns die man in der Table findet hinzufügen.

ZAV02V01@informix[goran]:cdr remaster -M goran_grp GB_goran_53_3_baum "select * from baum"

ZAV02V01@informix[goran]:cdr list repl brief GB_goran_53_3_baum

 
REPLICATE            TABLE                                    SELECT
----------------------------------------------------------------------------
GB_goran_53_3_baum   asb4001t@goran_grp:informix.baum         select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe , breite from baum
GB_goran_53_3_baum   asb4001t@zav02v01_grp:informix.baum      select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe , breite from baum

 

 

  • Nodes zwei überprüfen.

ZAV02V01@informix[zav02v01]:cdr list repl brief GB_goran_53_3_baum

REPLICATE            TABLE                                    SELECT
----------------------------------------------------------------------------
GB_goran_53_3_baum   asb4001t@goran_grp:informix.baum         select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe , breite from baum
GB_goran_53_3_baum   asb4001t@zav02v01_grp:informix.baum      select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe , breite from baum

ZAV02V01@informix[zav02v01]:echo "info columns for baum" |dbaccess asb4001t

 
Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes
breite               char(30)                                yes

 

 

 

Entfernen

* Columns “breite” soll aus einem laufenden Replicate herausgenommen werden

ZAV02V01@informix[goran]:echo "info columns for baum" |dbaccess asb4001t

Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes
breite               char(30)                                yes

 

 

  • Columns aus Replicate Entfernen, dabei werden nur die Clomns definiert die noch in den Replicate bleiben sollen

ZAV02V01@informix[goran]:cdr remaster -M goran_grp GB_goran_53_3_baum "select baumnr, baumname, baumanschrift, layout, ausehen, hoehe from baum" |dbaccess asb4001t

ZAV02V01@informix[goran]:cdr list repl brief GB_goran_53_3_baum

REPLICATE            TABLE                                    SELECT
----------------------------------------------------------------------------
GB_goran_53_3_baum   asb4001t@goran_grp:informix.baum         select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe from baum
GB_goran_53_3_baum   asb4001t@zav02v01_grp:informix.baum      select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe from baum

ZAV02V01@informix[goran]:echo "info columns for baum" |dbaccess

Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes
breite               char(30)                                yes

 

 

  • Columns aus der Table löschen

ZAV02V01@informix[goran]:echo "alter table baum drop breite"|dbaccess asb4001t

 Database selected.  
Table altered. 
Database closed.

ZAV02V01@informix[goran]:echo "info columns for baum" |dbaccess asb4001t

Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes

 

 

  • Überprüfung der Columns auf den anderen Nodes und auch hier Colmns löschen.

ZAV02V01@informix[zav02v01]: echo "info columns for baum" |dbaccess asb4001t

Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes
breite               char(30)                                yes

ZAV02V01@informix[zav02v01]:cdr list repl brief GB_goran_53_3_baum

REPLICATE            TABLE                                    SELECT
----------------------------------------------------------------------------
GB_goran_53_3_baum   asb4001t@goran_grp:informix.baum         select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe from baum
GB_goran_53_3_baum   asb4001t@zav02v01_grp:informix.baum      select  baumnr , baumname , baumanschrift , layout
 , ausehen , hoehe from baum

ZAV02V01@informix[zav02v01]:echo "info columns for baum" |dbaccess asb4001t

Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes
breite               char(30)                                yes

 

 

  • Löschen der Columns aus Table.

ZAV02V01@informix[zav02v01]:echo "alter table baum drop breite"|dbaccess asb4001t

Database selected. 
Table altered. 
Database closed.

ZAV02V01@informix[zav02v01]:echo "info columns for baum" |dbaccess asb4001t

Column name          Type                                    Nulls
 
baumnr               integer                                 no
baumname             char(15)                                yes
baumanschrift        char(45)                                yes
layout               char(30)                                yes
ausehen              char(30)                                yes
hoehe                char(30)                                yes
 

 

 

  • IBM Seite:

http://www.ibm.com/developerworks/db2/library/techarticle/dm-0506inturi/index.html#N102E4