私はテーブルからデータを抽出し、O/Pを表示しているコードを持っています。しかし、私は(スクリプトでハードコードされていない)txtファイルから接続文字列を与えたい。誰でも入力ファイルから以下の値を提供する方法をお手伝いできますか?perlスクリプトのテキストファイルからDBI接続パラメータを呼び出す方法は?
$dbh = DBI->connect('dbi:Oracle:DB_INST',"USER","PASS")
or die "Database connection not made: $DBI::errstr";
マイコード:あなたはプロパティから、データベースの資格情報を解析する
#!/usr/bin/perl
$ENV{ORACLE_HOME}='/ora/11.2.0.3';
$LD_LIBRARY_PATH='/ora/11.2.0.3/lib';
use Shell;
use DBI ;
use CGI ;
my $cgi = new CGI;
print $cgi->header;
my $dbh;
$CGI_ST = new CGI;
#################### FUNCTIONS DECLARATION ########################################################
sub Start_HTM
{
print "<html>\n\n";
print "<title>LOGICAL DATE CHECK</title>\n\n";
print "<body>\n<center>\n";
print "<hr><h1 align=center><font color=#FFA500><u>LOGICAL DATE CHECK</u></font></h1>\n";
}
sub End_HTM
{
print "<a href=\"#\" onClick=window.close()>Close Window</a></b></small>";
print "</center>\n</body>\n</html>";
}
sub DisBackButton
{
print "<br><br><br><INPUT TYPE=button value=Back onClick=history.back()>";
}
####################################################################################################
print "Content-type: text/html\n\n";
open (FILE,"header.asp");
my $file = <FILE>;
close(FILE);
print "$file";
print "<SCRIPT LANGUAGE=JavaScript>";
print "</script>";
my $environment=$CGI_ST->param("environment");
my $product=$CGI_ST->param("product");
Start_HTM();
if ("$product" eq "2" && "$environment" eq "MPET") {
print $cgi->start_html(-title=>'Basic CGI');
# you should change the connect method call to use the DBD you are
# using. The following examples all use DBD::ODBC and hence the
# first argument to the connect method is 'dbi:ODBC:DSN'.
my $dsn = "DBI:Oracle:$db_inst";
$dbh = DBI->connect('dbi:Oracle:DB_INST',"USER","PASS") or die "Database connection not made: $DBI::errstr";
my $sql = qq{SELECT logical_date,logical_date_type from logical_date where expiration_date is null };
my $sth = $dbh->prepare($sql) || die $dbh->errstr;
$sth->execute() || die $dbh->errstr;
print $cgi->table({ -border=>"1" });
while (@data = $sth->fetchrow_array()) {
$Logical_Date_O = $data[0];
$Logical_Date_B = $data[1];
$Logical_Date_R = $data[2];
print "<tr><td><font color='black'>$Logical_Date_O</font></td>
<td>$Logical_Date_B</td><td>$Logical_Date_R</td></tr>\n";
}
}
print $cgi->end_table;
print $cgi->end_html;
テキストファイルからの行の読み方を尋ねていますか?アディはそれをする! (FILE); ') – ikegami
入力ファイルから 'DB_INST'、 'USER'、 'PASS'を呼び出したいと思います。 値は下に移動します。 DBI-> connect( 'dbi:Oracle:DB_INST'、 "USER"、 "PASS") –