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
>  > sqlite-users@sqlite.org
>  > 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
>  sqlite-users@sqlite.org
>  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
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to