NAME
DBIx::Diff::Struct - Compare structure of two DBI databases
VERSION
This document describes version 0.03 of DBIx::Diff::Struct (from Perl distribution DBIx-Diff-Struct), released on 2015-01-03.
SYNOPSIS
use DBIx::Diff::Struct qw(diff_db_struct diff_table_struct);
my $res = diff_db_struct($dbh1, 'dbname1', $dbh2, 'dbname2');
See function's documentation for sample result structure.
DESCRIPTION
Currently only tested on Postgres and SQLite.
FUNCTIONS
diff_db_struct($dbh1, $dbh2) -> any
Compare structure of two DBI databases.
This function compares structures of two DBI databases. You supply two DBI
database handles and this function will return a hash:
{
# list of tables found in first db but missing in second
deleted_tables => ['table1', ...],
# list of tables found only in the second db
added_tables => ['table2', ...],
# list of modified tables, with details for each
modified_tables => {
table3 => {
deleted_columns => [...],
added_columns => [...],
modified_columns => {
column1 => {
old_type => '...',
new_type => '...',
...
},
},
},
},
}
Arguments ('*' denotes required arguments):
dbh1* => obj
DBI database handle for the first table.
dbh2* => obj
DBI database handle for the second table.
Return value: (any)
diff_table_struct($dbh1, $dbh2, $table) -> any
Compare structure of two DBI tables.
This function compares structures of two DBI tables. You supply two DBI
database handles along with table name and this function will return a hash:
{
deleted_columns => [...],
added_columns => [...],
modified_columns => {
column1 => {
old_type => '...',
new_type => '...',
...
},
},
}
Arguments ('*' denotes required arguments):
dbh1* => obj
DBI database handle for the first table.
dbh2* => obj
DBI database handle for the second table.
table* => str
Table name.
Return value: (any) =head1 SEE ALSO
DBIx::Compare to compare database contents.
HOMEPAGE
Please visit the project's homepage at https://metacpan.org/release/DBIx-Diff-Struct.
SOURCE
Source repository is at https://github.com/perlancar/perl-DBIx-Diff-Struct.
BUGS
Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=DBIx-Diff-Struct
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
AUTHOR
perlancar <perlancar@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2015 by perlancar@cpan.org.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.