![]() |
perl+mysql вопросец
че-то я не могу понять
вот код $sth = $dbh->prepare(q{SELECT * FROM list where param1="1" || param1="2"} ) || die "Can't prepare statement: $DBI::errstr"; как запрос SELECT преврвтить в переменную перл? то есть что-то типа $req='SELECT * FROM list where param1="1" || param1="2"'; $sth = $dbh->prepare(q{"$req"}); во всяком случае так должно быть но может и нет не работает:confused: |
а ты каким классом пользуешься для подсоединения к mysql? там наверняка документирован метод вывода результата... вклей исходник самого класса, чтоль, а то так от балды и не определить.
|
use DBI;
если написать просто $sth = $dbh->prepare(q{SELECT * FROM list where param1="1" || param1="2"} ) || die "Can't prepare statement: $DBI::errstr"; то все работает а вот глюки в превращение запроса в переменнуюэ че-то я не пойму |
$sth = $dbh->prepare(q{$req});
$sth = $dbh->prepare(q{'$req'}); $sth = $dbh->prepare($req); попробуй |
q{} - просто делает string из того что есть внутри, поетому
достаточно сделать: $sth = $dbh->prepare($req); т.к. $req уже string. то есть $sth = $dbh->prepare(q{"$req"}); делает prepare для SQL query равной "$req" а не заначению переменной $req. |
точно
|
Часовой пояс GMT +4, время: 11:01. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.