переменные sqlite - PullRequest
       4

переменные sqlite

1 голос
/ 11 апреля 2011

Привет!

Я использую SQLite. Я хочу объявить переменную, но это дает мне синтаксическую ошибку. Пожалуйста, помогите мне найти решение:

Select * from t2 where value= ?

Это мой запрос. Теперь, как я могу передать значения в ??

Заранее спасибо, Дженни

Ответы [ 3 ]

2 голосов
/ 29 января 2013

Вы можете поддерживать переменные в sqlite, используя временную таблицу в памяти.Смотрите мой ответ на https://stackoverflow.com/a/14574227/1435110

2 голосов
/ 11 апреля 2011

Насколько я знаю, SQLite не поддерживает ничего подобного.

Синтаксис является стандартным для библиотек, которые реализуют связанные параметры (и подготовленные операторы, которые их используют), но вам нужно будет сделать это вязык программирования, который запрашивает базу данных, а не саму базу данных.

Специфика, конечно, зависит от языка программирования и библиотеки.

Например, в Perl вы могли бы:

my $sth = $dbh->prepare("Select * from t2 where value=?");
foreach my $value (@values) {
    $sth->execute($value);
    $row = $sth->fetchrow_hashref;
    [...]
}

Bobby Tables содержит еще несколько примеров на разных языках.

0 голосов
/ 11 апреля 2011

Единственный способ использовать такие переменные - это использовать функции привязки . Во многих случаях проще создать строку запроса на языке, который вы используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...