quotes, quotes, quotes...

I am getting this error and I know what is causing it, but I have no idea
how to fix it, any help would be great. The script steps through the
/var/log/messages file on a linux server and puts
The entries into a mysql database. However when it gets to the 'hlt' line in
the messages file it just barfs. The single quotes are freaking it out. I
know about quotes but not how to use in
this situation.

Thanks,
        Paul

Error:
May 27 17:53:00 localhost kernel: Checking 'hlt' instruction... OK.
<----- doesn't like this in the messages file
DBD::mysql::st execute failed: You have an error in your SQL syntax near
'hlt' instruction... OK. ')' at line 1 at ./logger_test.pl line 21, <LOG>
line 40.

The one second sleep, and the print in the script is so I can see what is
going on, otherwise it is scrolling way to fast
Script:
============================================================================
=========
#!/usr/bin/perl -wT
#
use DBI;

$dsn = "DBI:mysql:servers:localhost";
$user_name = "user";
$passwd = "password";

$log = "/var/log/messages";

$dbh = DBI->connect ($dsn, $user_name, $passwd, {RaiseError => 1});

open(LOG, $log) || die "Can't open $log: $!\n";

while (<LOG>) {
        ($month, $day, $time, $logged_host, $service, $description) = split
/ /, $_, 6;
        print "$month $day $time $logged_host $service $description\n";
        sleep 1;
        $sth = $dbh->prepare( "INSERT INTO status values ('$month', '$day',
'$time', '$logged_host', '$service', '$description')" );
        $sth->execute ();
        $sth->finish ();
}

$dbh->disconnect ();
close(LOG);

-3
paul
5/31/2001 6:58:49 AM
perl.dbi.users 11084 articles. 1 followers. Follow

4 Replies
1964 Views

Similar Articles

[PageSpeed] 52

On Wed, 30 May 2001, Paul Fontenot wrote:

> I am getting this error and I know what is causing it, but I have no idea
> how to fix it, any help would be great. The script steps through the
> /var/log/messages file on a linux server and puts
> The entries into a mysql database. However when it gets to the 'hlt' line in
> the messages file it just barfs. The single quotes are freaking it out. I
> know about quotes but not how to use in
> this situation.

Use the placeholders ? in the prepare statement and pass the variables
with execute statement as described in the documentation

Regards herbie

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Herbert Liechti                     E-Mail: Herbert.Liechti@thinx.ch
ThinX networked business services       Adlergasse 5, 4500 Solothurn
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


-3
Herbert
5/31/2001 7:00:55 AM
From:           	"Paul Fontenot" <paul@pitbull-racing.com>
To:             	<dbi-users@perl.org>
Subject:        	quotes, quotes, quotes...
Date sent:      	Wed, 30 May 2001 23:58:49 -0700


Paul,

use placeholders as follows (and add error checking yourself):

> ============================================================================
> =========
> #!/usr/bin/perl -wT
> #
> use DBI;
> 
> $dsn = "DBI:mysql:servers:localhost";
> $user_name = "user";
> $passwd = "password";
> 
> $log = "/var/log/messages";
> 
> $dbh = DBI->connect ($dsn, $user_name, $passwd, {RaiseError => 1});
>

# prepare $sth *now*

  $sth = $dbh->prepare( "INSERT INTO status values (?, ?, ?, ?, ?, 
?)" );
 
> open(LOG, $log) || die "Can't open $log: $!\n";
> 
> while (<LOG>) {
>         ($month, $day, $time, $logged_host, $service, $description) = split
> / /, $_, 6;
>         print "$month $day $time $logged_host $service $description\n";
>         sleep 1;

>         $sth->execute ($month, $day, $time, $logged_host, $service, $description);
> }
> 
> $dbh->disconnect ();
> close(LOG);
> 


Dr. med. Bodo Eing
Institut fuer Medizinische Mikrobiologie
Klinische Virologie
v.-Stauffenbergstr. 36
48151 Muenster
Germany

Phone: ++49 251 7793 111 Fax: ++49 251 7793-104
3
eingb
5/31/2001 7:14:56 AM
Thanks for the gentle nudge. As usual the list is absolutely correct and
most appreciated.

-Paul

-----Original Message-----
From: Herbert.Liechti@thinx.ch [mailto:Herbert.Liechti@thinx.ch]
Sent: Thursday, May 31, 2001 12:01 AM
To: Paul Fontenot
Cc: dbi-users@perl.org
Subject: Re: quotes, quotes, quotes...

On Wed, 30 May 2001, Paul Fontenot wrote:

> I am getting this error and I know what is causing it, but I have no idea
> how to fix it, any help would be great. The script steps through the
> /var/log/messages file on a linux server and puts
> The entries into a mysql database. However when it gets to the 'hlt' line
in
> the messages file it just barfs. The single quotes are freaking it out. I
> know about quotes but not how to use in
> this situation.

Use the placeholders ? in the prepare statement and pass the variables
with execute statement as described in the documentation

Regards herbie

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Herbert Liechti                     E-Mail: Herbert.Liechti@thinx.ch
ThinX networked business services       Adlergasse 5, 4500 Solothurn
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


0
paul
5/31/2001 7:19:39 AM
LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQ0KDQpJIHdyb3RlIGEgc25pcHBldC4s
IFNlZSBkYmgtPnF1b3RlLg0KDQokc3FscXVlcnkgPSBzcHJpbnRmICJVUERBVEUgdGVtcG9yYXJ5
IFNFVCBzZW50ZW5jZSA9ICVzIFdIRVJFIHBhZ2UgPSAlcyIsICRkYmgtPnF1b3RlKCRzZW50ZW5j
ZVskY291bnRdKSwkZGJoLT5xdW90ZSgkcGFnZVskY291bnRdKTsNCiAgICRzdGggPSAkZGJoLT5w
cmVwYXJlKCBxcXskc3FscXVlcnl9ICk7DQogICAkc3RoLT5leGVjdXRlIHVubGVzcyAkZGJoLT5l
cnJzdHI7DQogDQoNCmh0dHA6Ly93d3cub2tjbHViLmNvbQ0Kb2twb2xpcyBhdCBva2NsdWIuY29t
DQoNCg0KDQotIC0tLS0tIE9yaWdpbmFsIE1lc3NhZ2UgLS0tLS0gDQpGcm9tOiAiUGF1bCBGb250
ZW5vdCIgPHBhdWxAcGl0YnVsbC1yYWNpbmcuY29tPg0KVG86IDxkYmktdXNlcnNAcGVybC5vcmc+
DQpTZW50OiBUaHVyc2RheSwgTWF5IDMxLCAyMDAxIDM6NTggUE0NClN1YmplY3Q6IHF1b3Rlcywg
cXVvdGVzLCBxdW90ZXMuLi4NCg0KDQo+IEkgYW0gZ2V0dGluZyB0aGlzIGVycm9yIGFuZCBJIGtu
b3cgd2hhdCBpcyBjYXVzaW5nIGl0LCBidXQgSSBoYXZlIG5vIGlkZWENCj4gaG93IHRvIGZpeCBp
dCwgYW55IGhlbHAgd291bGQgYmUgZ3JlYXQuIFRoZSBzY3JpcHQgc3RlcHMgdGhyb3VnaCB0aGUN
Cj4gL3Zhci9sb2cvbWVzc2FnZXMgZmlsZSBvbiBhIGxpbnV4IHNlcnZlciBhbmQgcHV0cw0KPiBU
aGUgZW50cmllcyBpbnRvIGEgbXlzcWwgZGF0YWJhc2UuIEhvd2V2ZXIgd2hlbiBpdCBnZXRzIHRv
IHRoZSAnaGx0JyBsaW5lIGluDQo+IHRoZSBtZXNzYWdlcyBmaWxlIGl0IGp1c3QgYmFyZnMuIFRo
ZSBzaW5nbGUgcXVvdGVzIGFyZSBmcmVha2luZyBpdCBvdXQuIEkNCj4ga25vdyBhYm91dCBxdW90
ZXMgYnV0IG5vdCBob3cgdG8gdXNlIGluDQo+IHRoaXMgc2l0dWF0aW9uLg0KPiANCj4gVGhhbmtz
LA0KPiAgICAgICAgIFBhdWwNCj4gDQo+IEVycm9yOg0KPiBNYXkgMjcgMTc6NTM6MDAgbG9jYWxo
b3N0IGtlcm5lbDogQ2hlY2tpbmcgJ2hsdCcgaW5zdHJ1Y3Rpb24uLi4gT0suDQo+IDwtLS0tLSBk
b2Vzbid0IGxpa2UgdGhpcyBpbiB0aGUgbWVzc2FnZXMgZmlsZQ0KPiBEQkQ6Om15c3FsOjpzdCBl
eGVjdXRlIGZhaWxlZDogWW91IGhhdmUgYW4gZXJyb3IgaW4geW91ciBTUUwgc3ludGF4IG5lYXIN
Cj4gJ2hsdCcgaW5zdHJ1Y3Rpb24uLi4gT0suICcpJyBhdCBsaW5lIDEgYXQgLi9sb2dnZXJfdGVz
dC5wbCBsaW5lIDIxLCA8TE9HPg0KPiBsaW5lIDQwLg0KPiANCj4gVGhlIG9uZSBzZWNvbmQgc2xl
ZXAsIGFuZCB0aGUgcHJpbnQgaW4gdGhlIHNjcmlwdCBpcyBzbyBJIGNhbiBzZWUgd2hhdCBpcw0K
PiBnb2luZyBvbiwgb3RoZXJ3aXNlIGl0IGlzIHNjcm9sbGluZyB3YXkgdG8gZmFzdA0KPiBTY3Jp
cHQ6DQo+ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0NCj4gPT09PT09PT09DQo+ICMhL3Vzci9iaW4vcGVy
bCAtd1QNCj4gIw0KPiB1c2UgREJJOw0KPiANCj4gJGRzbiA9ICJEQkk6bXlzcWw6c2VydmVyczps
b2NhbGhvc3QiOw0KPiAkdXNlcl9uYW1lID0gInVzZXIiOw0KPiAkcGFzc3dkID0gInBhc3N3b3Jk
IjsNCj4gDQo+ICRsb2cgPSAiL3Zhci9sb2cvbWVzc2FnZXMiOw0KPiANCj4gJGRiaCA9IERCSS0+
Y29ubmVjdCAoJGRzbiwgJHVzZXJfbmFtZSwgJHBhc3N3ZCwge1JhaXNlRXJyb3IgPT4gMX0pOw0K
PiANCj4gb3BlbihMT0csICRsb2cpIHx8IGRpZSAiQ2FuJ3Qgb3BlbiAkbG9nOiAkIVxuIjsNCj4g
DQo+IHdoaWxlICg8TE9HPikgew0KPiAgICAgICAgICgkbW9udGgsICRkYXksICR0aW1lLCAkbG9n
Z2VkX2hvc3QsICRzZXJ2aWNlLCAkZGVzY3JpcHRpb24pID0gc3BsaXQNCj4gLyAvLCAkXywgNjsN
Cj4gICAgICAgICBwcmludCAiJG1vbnRoICRkYXkgJHRpbWUgJGxvZ2dlZF9ob3N0ICRzZXJ2aWNl
ICRkZXNjcmlwdGlvblxuIjsNCj4gICAgICAgICBzbGVlcCAxOw0KPiAgICAgICAgICRzdGggPSAk
ZGJoLT5wcmVwYXJlKCAiSU5TRVJUIElOVE8gc3RhdHVzIHZhbHVlcyAoJyRtb250aCcsICckZGF5
JywNCj4gJyR0aW1lJywgJyRsb2dnZWRfaG9zdCcsICckc2VydmljZScsICckZGVzY3JpcHRpb24n
KSIgKTsNCj4gICAgICAgICAkc3RoLT5leGVjdXRlICgpOw0KPiAgICAgICAgICRzdGgtPmZpbmlz
aCAoKTsNCj4gfQ0KPiANCj4gJGRiaC0+ZGlzY29ubmVjdCAoKTsNCj4gY2xvc2UoTE9HKTsNCj4g
DQotLS0tLUJFR0lOIFBHUCBTSUdOQVRVUkUtLS0tLQ0KVmVyc2lvbjogUEdQIDcuMC4xDQoNCmlR
Q1ZBd1VCT3hZdEVxNWtMbGRTck9pQkFRRUxTZ1AvZUEzRXhqMzBNZ2VieHZVTjdvUEtoalBEYi9I
UjI4WXYNCktYaDh3eU9Nc09YS1J0V1JaVW9YSmlBOGN6T2pZWnRaYVFBWlFBTm9aS2FhdmlSMzZO
V0t3aTZzNlVSeGFJWDkNCnFNTUplbXg4U29tUGY1VGdqSCtFZ3JVOEtxOGRDVlFjS3MxM29FSmxv
QVhEcExkMTVSNVRMOXFoZVlpTlVtVXMNCnpmV250UzR2bWxnPQ0KPXZvcFcNCi0tLS0tRU5EIFBH
UCBTSUdOQVRVUkUtLS0tLQ0KDQo=

0
mailing
5/31/2001 11:37:58 AM
Reply:

Web resources about - quotes, quotes, quotes... - perl.dbi.users

Pull quote - Wikipedia, the free encyclopedia
Placement of a pull quote on a page may be defined in a publication's or website's style guide . Such a typographic device may or may not be ...

Facebook Adds Open Graph Actions Such As Run, Quote, Want To Watch
Facebook has been experimenting with ways that allow users to be more expressive — such as structured status updates and more info in the “about” ...

Business Finance News – Business Stock Quotes, Stock Market Today
Business Finance News bringing you ground-breaking stock market quotes and business news related to stock market today.

Fox Business - Business News & Stock Quotes - Saving & Investing
Business news, small business news, business financial news,personal finance, finance trends, finance news, stock market index, stock data, stock ...

Quotes, Badoo, BranchOut, Photos, VEVO, Videos, Horoscopes and More on This Week’s Top 20 Facebook Apps ...
Quotes topped our list of the top Facebook applications by monthly active users this week, while the rest of the list was pretty varied, and ...

MarketWatch - Stock Market Quotes, Business News, Financial News
Stock Market Quotes, Business News and Financial News from the leading provider MarketWatch.com, wholly-owned subsidiary of Dow Jones & Company, ...

Stock Market Today - Financial News, Quotes and Analysis - TheStreet
Follow the stock market today on TheStreet. Get free stock quotes, financial news and analysis from stock market pros including Jim Cramer.

SouthPark Quotes (@SouthParkAQuote) on Twitter
Sign in Sign up To bring you Twitter, we and our partners use cookies on our and other websites. Cookies help personalize Twitter content, tailor ...

經濟通 ET Net- 港股財經基金投資- 免費即時股票報價 HK Free Real Time Stock Quote
Copyright 2012 ET Net Limited. http://www.etnet.com.hk ET Net Limited, HKEx Information Services Limited, its Holding Companies and/or any Subsidiaries ...

Quote: Doc on life as a race.
Yesterday at Aaron's memorial in NYC, Doc Searls said something I want to remember. When you're young you think life is a sprint. When you're ...

Resources last updated: 11/21/2015 1:45:42 AM