On 9/18/08, hugh111111 <[EMAIL PROTECTED]> wrote:
>
> Hi P Kishor-3
> Thanks for your reply. I have altered my script according to your
> recommendation, unfortunately the problem remains. I have also used the
> eval{ } function to capture the log messages. The log said "no such column:
> userOccupation(1)" Not sure why it should append (1) to my column name.
Post your db schema and a few rows... let's see what is going on
>
> my new perl script is...
>
>
> #!/usr/bin/perl
>
> use DBI;
>
>
>
>
> my $sth = $dbh->prepare(qq{
> SELECT userID FROM members WHERE userName= ? AND userOccupation= ?
> });
>
>
> eval{ $sth->execute('John', 'Carpenter') }; warn("My warning is: $@") if $@
>
> ;
>
> my $output;
> while (my @row = $sth->fetchrow_array ) {
> $output .= join(' ', @row) . "\n";
> }
>
> $dbh -> disconnect;
>
> print "Content-type:text/html\n\n";
> print "<html><body><h1>Hello World</h1> $output </body></html>";
>
>
>
> and a section of the log error message is...
>
> 18-Sep-2008 22:56:37 org.apache.catalina.core.ApplicationContext log
> INFO: cgi: runCGI (stderr):DBD::SQLite::db prepare failed: no such column:
> userOccupation(1) at dbdimp.c line 271 at
> C:\tomcat\webapps\test\WEB-INF\cgi-bin\test.pl line 6.
> 18-Sep-2008 22:56:37 org.apache.catalina.core.ApplicationContext log
> INFO: cgi: runCGI (stderr):My warning is: Can't call method "execute" on an
> undefined value at C:\tomcat\webapps\test\WEB-INF\cgi-bin\test.pl line 10.
>
>
>
>
>
> P Kishor-3 wrote:
> >
> > On 9/18/08, hugh111111 <[EMAIL PROTECTED]> wrote:
> >>
> >> I'm using sqlite for my perl cgi website but I've got a problem with the
> >> following select statement...
> >>
> >> SELECT userID FROM members WHERE userName='John' AND
> >> userOccupation='Carpenter'
> >>
> >> Yet if I input this statement from the sqlite3 command prompt it works!
> >> The
> >> problem seems to be with the 'and', the following statement works fine
> >> in
> >> both cgi script and from the sqlite3 prompt...
> >>
> >> SELECT userID FROM members WHERE userName='John'
> >>
> >> I hope somebody can help with this, I'm new to both perl and sqlite but
> >> very
> >> keen on using sqlite for future projects.
> >>
> >>
> >>
> >> here is my perl script...
> >>
> >>
> >> #!/usr/bin/perl
> >>
> >> use DBI;
> >>
> >> my $output;
> >> my $sql = "SELECT userID FROM members WHERE userName='John' AND
> >> userOccupation='Carpenter'";
> >>
> >> my $dbh = DBI->connect("dbi:SQLite:test.db", "", "");
> >> my $sth = $dbh->prepare($sql);
> >> $sth->execute();
> >>
> >> while ( @row = $sth->fetchrow_array ) {
> >> $output .= "@row\n";
> >> }
> >>
> >> $dbh -> disconnect;
> >>
> >> print "Content-type:text/html\n\n";
> >> print "<html><body><h1>Hello World</h1> $output </body></html>";
> >>
> >>
> >
> > always bind variables. See untested code below
> >
> > #!/usr/bin/perl
> >
> > use DBI;
> > my $dbh = DBI->connect("dbi:SQLite:test.db", "", "");
> >
> > my $sth = $dbh->prepare(qq{
> > SELECT userID
> > FROM members
> > WHERE userName = ? AND userOccupation = ?
> > });
> >
> > $sth->execute('John', 'Carpenter');
> >
> > my $output;
> > while (my @row = $sth->fetchrow_array ) {
> > $output .= join(' ', @row) . "\n";
> > }
> >
> > $dbh -> disconnect;
> >
> > print "Content-type:text/html\n\n";
> > print "<html><body><h1>Hello World</h1> $output </body></html>";
>
> > _______________________________________________
> > sqlite-users mailing list
> > [email protected]
> > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
> >
> >
>
>
> --
> View this message in context:
> http://www.nabble.com/newbie-problem-with-select-statement-using-%27AND%27-tp19561141p19562855.html
>
> Sent from the SQLite mailing list archive at Nabble.com.
>
> _______________________________________________
> sqlite-users mailing list
> [email protected]
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>
--
Puneet Kishor http://punkish.eidesis.org/
Nelson Institute for Environmental Studies http://www.nelson.wisc.edu/
Open Source Geospatial Foundation (OSGeo) http://www.osgeo.org/
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users