A Few changed and your code will work..
Try changing
my %opts=(GetOptions(
'help|?' => \$help,
'server' => \$server,
'user' => \$user,
'password' => \$password
));
to
GetOptions (\%opts,
qw( help|h|?
server=s
user=s
password=s
));
also put everything after
&Help;
}
into and elsif statement something like
&Help;
}
elsif( defined $opts{server} && defined $opts{user} && defined $opts{p
+assword} ) {
my $mytime=(time);
...
}
else {
&Help;
}
Then for your database connection bit try using the following:
my $dbh;
my $DSN = "driver={SQL Server};Server=$opts{server};database=$database
+;";
if ($dbh = DBI->connect("dbi:ODBC:$DSN","$opts{user}","$opts{password}
+")) {
&Logger ("...Success: connected to database $opts{server}\\$databa
+se\n");
}
else {
&Logger("ERROR - Cannot connect to DB: $dbh->errstr()\n");
}
also you can't have
$sth->finish if you havent prepared or ecexuted a $sth statement I.e.
my $query = "select * from sometable";
my $sth = $dbh->prepare($query);
for my $rec (@records) {
$sth->execute(@$rec);
}
$setsth->finish();
Type Stuff - HTH
Update:Sorry Typo... change $setsth->execute(@$rec); to $sth->execute(@$rec);
-----
Of all the things I've lost in my life, its my mind I miss the most.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.