SQL-Admin

 view release on metacpan or  search on metacpan

t/02-driver-db2-producer.t  view on Meta::CPAN

      ],
  }
]);

######################################################################
## Alter table
######################################################################

test_products constraint_name => (
    [ 'CONSTRAINT aaa', 'aaa' ],
);


test_products column_list => (
    [ '(aaa)', [ 'aaa' ] ],
    [ '(aaa, bbb)', [ 'aaa', 'bbb' ] ],
);

test_products primary_key_constraint => (
    [ 'PRIMARY KEY (aaa) ', {
        column_list => [ 'aaa' ],
    } ],
    [ 'CONSTRAINT cname PRIMARY KEY (aaa) ', {
        constraint_name => 'cname',
        column_list => [ 'aaa' ],
    } ],
);

test_products add_constraint => (
    [ 'ADD PRIMARY KEY (aaa) ', {
        primary_key_constraint => {
            column_list => [ 'aaa' ],
        } } ],
    [ 'ADD CONSTRAINT cname PRIMARY KEY (aaa) ', {
        primary_key_constraint => {
            constraint_name => 'cname',
            column_list => [ 'aaa' ],
        } } ],
);

test_products alter_table_action => (
    [ '', { 'db2_locksize' => 'ROW' } ],
    [ '', { 'db2_append'   => 0     } ],
    [ '', { 'db2_volatile' => 0     } ],
    [ '', { 'db2_log_index' => undef } ],
    [ 'add constraint xyz primary key (aaa)', {
        add_constraint => { primary_key_constraint => {
            constraint_name => 'xyz',
            column_list     => [ 'aaa' ],
        } } } ],
    [ 'add constraint xyz primary key (aaa, bbb)', {
        add_constraint => { primary_key_constraint => {
            constraint_name => 'xyz',
            column_list     => [ 'aaa', 'bbb' ],
        } } } ],
    [ 'add constraint xyz unique (APP_ID, MSISDN)', {
        add_constraint => { unique_constraint => {
            constraint_name => 'xyz',
            column_list     => [ 'APP_ID', 'MSISDN' ],
        } } } ],
    [ 'add constraint xyz foreign key (aaa) references bbb.ccc (ddd) on delete cascade on update no action', {
        add_constraint => { foreign_key_constraint => {
            constraint_name  => 'xyz',
            db2_enforced     => 1,
            db2_optimize     => 0,
            update_rule      => 'no_action',
            delete_rule      => 'cascade',
            referenced_table => { schema => 'bbb', name => 'ccc' },
            referenced_column_list  => [ 'ddd' ],
            referencing_column_list => [ 'aaa' ],
        } } } ],
);

test_products alter_table => (
    [ '', {
        table_name => { schema => 'aaa', name => 'bbb' },
        alter_table_actions => [
            { db2_locksize => 'ROW' },
            { db2_append => 0 },
            { db2_volatile => 0 },
            { db2_log_index => undef },
        ],
    }],
);

test_products statement_insert => (
    [ 'insert into bbb.aaa (ccc, ddd) values (4, 2)', {
        table_name => { schema => 'bbb', name => 'aaa' },
        column_list => [ 'ccc', 'ddd' ],
        insert_value_list => [
            [ { numeric_constant => 4 }, { numeric_constant => 2 } ],
        ]}],

    [ 'insert into bbb.aaa values (4, 2)', {
        table_name => { schema => 'bbb', name => 'aaa' },
        insert_value_list => [
            [ { numeric_constant => 4 }, { numeric_constant => 2 } ],
        ]}],

    [ 'insert into bbb.aaa (ccc, ddd) values (1, null), (2, current timestamp), (3, default)', {
        table_name => { schema => 'bbb', name => 'aaa' },
        column_list => [ 'ccc', 'ddd' ],
        insert_value_list => [
            [ { numeric_constant => 1 }, { null => 1 } ],
            [ { numeric_constant => 2 }, { current_timestamp => 1  } ],
            [ { numeric_constant => 3 }, { default => 1  } ],
        ]}],
)



( run in 0.927 second using v1.01-cache-2.11-cpan-39bf76dae61 )