|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Vlad Shikhalev 2:5020/1435 15 May 2000 21:35:17 To : Ilya Lobahin Subject : Re: DBI -------------------------------------------------------------------------------- 13 May 00 18:55, Ilya Lobahin wrote to All: IL> Hебольшая проблема, записывается пара значений в базу данных, если их IL> явно определить в скрипте - то все получается, а если их подставлять IL> через переменную - хрен с маком: my $name = 'User1'; my $user = IL> 'Ivanov'; my $sth = $dbh->prepare(q{ insert into test (name,user) IL> values ($name,$user) }) || die $dbh->errstr; $sth->execute || die IL> $dbh->errstr; ^, вот так - вот хрен! IL> Чувствую, что ответ где-то на поверхности, а вот где, не пойму... :-( 1. У тебя написано q(...), т.е. одиночные кавычки => переменные не интерпретируются. 2. Строчные значения в DML должны заключаться в кавычки/апострофы (как в постгрессе - не знаю). 3. Лучше юзать плейсхолдеры (тогда и кавычек не надо, и ескейпится все само), примерно так: $sth=$dbh->prepare('insert into test (name,user) values (?,?)') or die ...; $sth->execute($name,$user) or die ...; Best wishes, ICQ UIN 4946689(home), 8131583(work) Vlad V. Shikhalev, E-Mail: vvs@ru.ru 15 May 00, 22:35. ... let us never lose the lessons we have learned ... --- Голый дед с плюсом версии 1.1.4.3 * Origin: Сегодня хуже, чем вчера (2:5020/1435) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/14317392044b3.html, оценка из 5, голосов 10
|