|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/371.32 22 Aug 2000 12:55:03 To : ilya@inf.tsu.ru Subject : Re: DBI -------------------------------------------------------------------------------- >>> AK>> $h = $dbh->prepare("SELECT * FROM HITS WHERE UID = ?"); >>> AK> $h->> execute($var); iitr> ... SS>> представление СУБД, и менять там имена колонок в этот момент уже нельзя. SS>> А если даже у mySQL это и не так - то значит его авторам надо мозги SS>> вправлять (во что я впрочем готов поверить). iitr> Тут есть такой наболевший вопрос - нужно передать как параметр число, а iitr> DBI, передавая $var=1 подставляет в запрос код символа '1' и получается iitr> не 1, а 49. Я, конечно, понимаю, что внутренее представление этой iitr> области памяти, помеченной символом $var может действительно iitr> представлять из себя 49, но как же тогда указать, что это должно iitr> интерпретироваться числом? Типа val($var). А то грабли огромные. Грабли, как обычно, заключаются в нечитании документации. СУБД бывают разные. MySQL и PostgreSQL, для примера, замечательно интерпретируют '1' как 1, если поле числовое. А для тех, у кого неявные преобразования типов устроены иначе, существует метод bind_param. В perdoc DBD::твой_драйвер должно быть описано то, чего не доописано про него в perldoc DBI. -- Счастливо! Ран. --- ifmail v.2.14.os-p7-tma3 * Origin: MemoNet (2:5020/371.32@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/17121af89f011.html, оценка из 5, голосов 10
|