From b17754d9ccc95bdcb3ceb3190e71cb5edc88b714 Mon Sep 17 00:00:00 2001 From: elserj Date: Wed, 25 Nov 2009 19:42:53 +0000 Subject: [PATCH] Added module to interactively connect to database on floret svn path=/; revision=12 --- interactome_scripts/DbiFloret.pm | 37 ++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100755 interactome_scripts/DbiFloret.pm diff --git a/interactome_scripts/DbiFloret.pm b/interactome_scripts/DbiFloret.pm new file mode 100755 index 0000000..e443260 --- /dev/null +++ b/interactome_scripts/DbiFloret.pm @@ -0,0 +1,37 @@ + +package DbiFloret; + +use DBI; +use Term::Screen::ReadLine; + + +sub dbconnect { + my $self = @_; + + my $screen = Term::Screen::ReadLine->new(); + # clear the screen + $screen->clrscr; + # ask for username + $screen->at(0,0)->puts("Username: "); + my $username = $screen->readline(ROW => 0, COL=>11); + + # ask for password, replace character presses with stars + $screen->at(1,0)->puts("Password: "); + my $password = $screen->readline(ROW => 1, COL => 11, PASSWORD => 1); + + $screen->at(2,0)->puts("Database: "); + my $database = $screen->readline(ROW => 2, COL => 11); + + $screen->at(3,0); + undef $screen; + + my $dbh = DBI->connect("DBI:mysql:$database;host=floret.cgrb.oregonstate.edu", $username, $password, + { RaiseError=> 1, AutoCommit=>1 } + ) or die "Failed to connect to database: $DBI::errstr"; + + + return $dbh; +} + + +return 1; -- 2.34.1