The docs state nothing about it being gone, nor does the changelist
The Docs however still refer to it:

/pro/3gl/CPAN/DBI-1.50 113 > grep -w -r dbish .
./Changes:  Added DBD::Shell and dbish interactive DBI shell. Try it!
./lib/DBI/FAQ.pm:        dbish -- The DBI Shell
./lib/DBI/ProxyServer.pm:Call a programm "dbish" from your commandline. I take 
the machine from rule "internal_webserver"
./lib/DBI/ProxyServer.pm:       dbish 
"dbi:Proxy:hostname=oracle.zdf;port=12400;dsn=dbi:Oracle:e01" informationdesk 
xxx
./lib/DBI/ProxyServer.pm:=item * I don't know how to pass query-parameters via 
dbish
./ToDo:dbish - state AutoCommit status clearly at connect time.
./blib/lib/DBI/Changes.pm:  Added DBD::Shell and dbish interactive DBI shell. 
Try it!
./blib/lib/DBI/FAQ.pm:        dbish -- The DBI Shell
./blib/lib/DBI/ProxyServer.pm:Call a programm "dbish" from your commandline. I 
take the machine from rule "internal_webserver"
./blib/lib/DBI/ProxyServer.pm:  dbish 
"dbi:Proxy:hostname=oracle.zdf;port=12400;dsn=dbi:Oracle:e01" informationdesk 
xxx
./blib/lib/DBI/ProxyServer.pm:=item * I don't know how to pass query-parameters 
via dbish
./blib/man3/DBI::FAQ.3:\&        dbish -- The DBI Shell
./blib/man3/DBI::ProxyServer.3:Call a programm \*(L"dbish\*(R" from your 
commandline. I take the machine from rule \*(L"internal_webserver\*(R"
./blib/man3/DBI::ProxyServer.3:\&        dbish 
"dbi:Proxy:hostname=oracle.zdf;port=12400;dsn=dbi:Oracle:e01" informationdesk 
xxx
./blib/man3/DBI::ProxyServer.3:.IP "* I don't know how to pass query-parameters 
via dbish" 4
./blib/man3/DBI::ProxyServer.3:.IX Item "I don't know how to pass 
query-parameters via dbish"
/pro/3gl/CPAN/DBI-1.50 114 >

I do not have DBI-1.33, but DBI-1.32 still had it, and DBI-1.34 was the first
to miss it. The changelog for 1.34 states:

  Removed old DBI::Shell from distribution and added Tom Lowery's improved
    version to the Bundle::DBI file.

But *is* is better? Last update was back in 2003, and it now requires other
modules that did not used to be required when still bundled:

/pro/3gl/CPAN/DBI-Shell-11.93 114 > perl Makefile.PL
Checking if your kit is complete...
Looks good
Warning: prerequisite IO::Tee 0 not found.
Warning: prerequisite Text::Reform 0 not found.
Writing Makefile for DBI::Shell

OK, I've changed the tests, so optional modules are not `required' anymore,
but optional, and then the docs say:

=head1 SYNOPSIS

  perl -MDBI::Shell -e shell [<DBI data source> [<user> [<password>]]]

or

  dbish [<DBI data source> [<user> [<password>]]]
  dbish --debug [<DBI data source> [<user> [<password>]]]
  dbish --batch [<DBI data source> [<user> [<password>]]] < batch file

Right, so

bev l1:/pro/3gl/CPAN/DBI-Shell-11.93 121 > dbish --debug dbi:Unify: "" PROBEV
DBI::Shell 11.93 using DBI 1.50
Unrecognised options: --debug
Exit 2

OK ... (read the DBD::Unify documentation to see why
        the user is "", and the pass is the SCHEMA-name)

bev l1:/pro/3gl/CPAN/DBI-Shell-11.93 119 > dbish dbi:Unify "" PROBEV
DBI::Shell 11.93 using DBI 1.50

WARNING: The DBI::Shell interface and functionality are
=======  very likely to change in subsequent versions!



Enter data source to connect to:
 1:
Enter data source or number, or full 'dbi:...:...' DSN: 1

(not connected)>

Grrr.
    $sh->{user}             = shift(@args) || $ENV{DBI_USER} || '';
    $sh->{password}         = shift(@args) || $ENV{DBI_PASS} || undef;

and later:
    if (defined $user and length $user) {
        $sh->{user}     = $user;
        $sh->{password} = undef;        # force prompt below
    }

dbish does not allow "" as user.

bev l1:/pro/3gl/CPAN/DBI-Shell-11.93 123 > dbish dbi:Unify: "x" PROBEV
DBI::Shell 11.93 using DBI 1.50

WARNING: The DBI::Shell interface and functionality are
=======  very likely to change in subsequent versions!


Connecting to 'dbi:Unify:' as 'x'...
[EMAIL PROTECTED]:Unify:> help
[EMAIL PROTECTED]:Unify:> ;
DBD::Unify::db prepare failed: Statement cannot be prepared., <FIN> line 2.
[EMAIL PROTECTED]:Unify:> help;
DBD::Unify::db prepare failed: Statement cannot be prepared., <FIN> line 3.
[EMAIL PROTECTED]:Unify:>

Now I entered a Ctrl-D

[EMAIL PROTECTED]:Unify:> Disconnecting from dbi:Unify:.
Segmentation fault (core dumped)
Exit 139
bev l1:/pro/3gl/CPAN/DBI-Shell-11.93 124 >

I give up. dbish is not up to the greatness of DBI
I suggest documenting in DBI that there is no more dbish

-- 
H.Merijn Brand        Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.9.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.0, AIX 4.3 & 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/           http://www.test-smoke.org
                       http://www.goldmark.org/jeff/stupid-disclaimers/

Reply via email to