App-DBBrowser

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

        - Rename the subquery-menu-entry in table/join/union menus.

2.048    2019-01-28
        - Update subquery menu.

2.047    2019-01-26
        - Use the whole terminal width (by upgrading Term::TablePrint).
        - Bugfix in subqueries.

2.046    2019-01-25
        - DBD::mysql: 'mysql_enable_utf8mb4' enabled by default, 'mysql_enable_utf8' disabled by default.
        - New input filter 'Add Column'.

2.045    2019-01-20
        - Bugfix: make the mouse work also in the help menu.
        - Parse mode 'split': new option to trim records.

2.044    2019-01-19
        - Union: allow to use tables more than one time.
        - Union: possibility to use a subquery instead of a table.
        - Postgress: change aliases to lowercase if 'quote_identifiers' is disabled.

lib/App/DBBrowser/DB.pm  view on Meta::CPAN

        DBI_HOST => 1,
        DBI_PORT => 1,
        DBI_USER => 0,
        DBI_PASS => 0,
    }

The result of the I<Attributes>* settings:

    $attributes:
    {
        mysql_enable_utf8        => 0,
        mysql_enable_utf8mb4     => 1,
        mysql_bind_type_guessing => 1,
    }

* OPTIONS/DB Options/DB Settings/$plugin

=end comment

=head1 EXAMPLE

    package App::DBBrowser::DB::MyPlugin;

lib/App/DBBrowser/DB/mysql.pm  view on Meta::CPAN

package # hide from PAUSE
App::DBBrowser::DB::mysql;

use warnings;
use strict;
use 5.016;

use DBD::mysql 4.041 qw();  # mysql_enable_utf8mb4 requires 4.041 or greater
use DBI              qw();

use App::DBBrowser::Credentials;
use App::DBBrowser::Opt::DBGet;

sub new {
    my ( $class, $info, $opt ) = @_;
    my $sf = {
        i => $info,
        o => $opt

lib/App/DBBrowser/DB/mysql.pm  view on Meta::CPAN

        { name => 'port', secret => 0 },
        { name => 'user', secret => 0 },
        { name => 'pass', secret => 1 },
    ];
}


sub set_attributes {
    my ( $sf ) = @_;
    return [
        { name => 'mysql_enable_utf8',        default => 0, values => [ 0, 1 ] },
        { name => 'mysql_enable_utf8mb4',     default => 1, values => [ 0, 1 ] },
        { name => 'mysql_bind_type_guessing', default => 1, values => [ 0, 1 ] },
        { name => 'ChopBlanks',               default => 0, values => [ 0, 1 ] },
    ];
}


sub get_db_handle {
    my ( $sf, $db ) = @_;
    my $db_opt_get = App::DBBrowser::Opt::DBGet->new( $sf->{i}, $sf->{o} );
    my $db_opt         = $db_opt_get->read_db_config_files();



( run in 0.298 second using v1.01-cache-2.11-cpan-00829025b61 )