Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 » MobiLink - Getting Started » MobiLink Tutorials » Tutorial: Changing a schema using the ScriptVersion extended option

 

Lesson 4: Perform schema change on the consolidated database

In this lesson, add a new column to the customer table to store the customer's cell phone number.

 To perform a schema change on the consolidated database
  1. Using the instance of Interactive SQL that's connected to the consolidated database, execute the following SQL to insert a row in the customer table:

    ALTER TABLE customer ADD cell_phone varchar(12) default null;
  2. Next, create a new script version called my_ver2 to handle synchronizations from remote databases with the new schema. Remote databases with the old schema will continue to use the old script version, my_ver1.

    Execute the following SQL against the consolidated database:



    CALL ml_add_column('my_ver2', 'customer', 'id', null );
    CALL ml_add_column('my_ver2', 'customer', 'name', null );
    CALL ml_add_column('my_ver2', 'customer', 'phone', null );
    CALL ml_add_column('my_ver2', 'customer', 'cell_phone', null );
    
    CALL ml_add_table_script( 'my_ver2', 'customer', 'upload_insert',
          'INSERT INTO customer ( id, name, phone, cell_phone ) ' 
          || 'VALUES ({ml r.id}, {ml r.name}, {ml r.phone}, {ml r.cell_phone})' );
    
    CALL ml_add_table_script( 'my_ver2', 'customer', 'download_cursor',
           'SELECT id, name, phone, cell_phone from customer' );
    
    CALL ml_add_table_script( 'my_ver2', 'customer', 'download_delete_cursor', '--{ml_ignore}' );
    
    COMMIT;