Hi, > It works. But when I do: > > $StateProvince = 'PA'; > my $sql1 = "SELECT id, name_short, name_long FROM states WHERE > name_short=$StateProvince"; > $sth1 = $dbh->prepare($sql1); > # > $sth1->execute(); > > I get a message that: > > DBD::mysql::st execute failed: Unknown column 'PA' in 'where clause' at > TestDBI.pl line 14.
try this: $StateProvince = q/'PA'/; my $sql1 = "SELECT id, name_short, name_long FROM states WHERE name_short=$StateProvince"; or better yet: $StateProvince = q/'PA'/; my $sql = 'SELECT id, name_short, name_long FROM states WHERE name_short= ?'; $sth = $dbh->prepare($sql); $sth->execute($StateProvince); Basicly $StateProvince in a string value in you sql statement, so you either single quote yourself, or let DBI do it. Regards, JJ