sub openDB {
my $return;
# Input argument: [string(DB Server hostname), String(Database name to open)]
print DEBUGFILE "Entering sub openDB\n" if ($DEBUG);
# requires use of require "/home/reporting/nwCentral/dbServers.pl" line
my $mysqlHost=shift;
my $mysqlDB=shift;
my $host = $dbServers{"$mysqlHost"}{'host'};
my $mysqlUser = $dbServers{"$mysqlHost"}{'user'};
my $mysqlPass = $dbServers{"$mysqlHost"}{'pass'};
my $mysqlHostQry = "DBI:mysql:$mysqlDB:$host";
my $dbh=DBI->connect($mysqlHostQry, $mysqlUser, $mysqlPass) or $return=0;
if ($return){
return $dbh;
}
else {
return 0;
}
}
####
sub openDATASOURCE{
print DEBUGFILE "Entering sub openDATASOURCE\n" if ($DEBUG);
my $socketInfo=$ipPort{$socketName};
my($remote_host, $remote_port)=split(/ /, $socketInfo);
if ($usingSocket) {
$DATASOURCE = new IO::Socket::INET->new(PeerAddr => $remote_host,
PeerPort => $remote_port,
Proto => "tcp",
Type => SOCK_STREAM)
or $DATASOURCE=0;
if ($DATASOURCE) {
$return=1;
$DATASOURCE->autoflush(1); #Make the IO hot -- disable buffering
print LOGFILE "$sysDate: IO: Connected to $remote_host $remote_port\n";
&updateSocketStatus("$$", "1");
}
else {
$return=0;
print LOGFILE "$sysDate: IO: Cannot open datasource: $@\n";
}
}
return $return;
if (!($usingSocket)) {
open (DATASOURCE, "<$namedPipe") or die "Couldn't open $namedPipe: $!\n";
}
}
####
sub doSQL {
print DEBUGFILE "Entering sub doSQL\n" if ($DEBUG);
my (@localArray, $sqlStatement, $size)=();
(@localArray)=@_;
$size=scalar (@localArray);
$sqlStatement="INSERT INTO $liveTable SET
@localArray";
if ($usingDB) {
my $sth=$mainDBh->prepare($sqlStatement) or &exitAll("notok", "doSQL:\nQuery= $sqlStatement\nError=" . $mainDBh->errstr);
$sth->execute() or &exitAll("notok", "doSQL:\nQuery= $sqlStatement\nError=" . $mainDBh->errstr);
}
print DEBUGFILE "$sqlStatement\n" if $DEBUG;
}