2014-02-11 1 views
0

У меня есть запрос, который выглядит следующим образом:жабы для связывания переменных Oracle с В статье

select * from foo where id in (:ids) 

где столбец ID является номером.

При запуске этого в жабу версии 11.0.0.116, я хочу, чтобы предоставить список идентификаторов, так что результирующий запрос:

select * from foo where id in (1,2,3) 

Простой непредвзятый подход ниже дает ошибку, что 1,2,3 не допустимым значением с плавающей точкой. Есть ли комбинация типов/значений, которая позволит мне запустить желаемый запрос?

CLARIFICATION: запрос, как показано, показан в моем коде, и я вставляю его в TOAD для тестирования результатов запроса с различными значениями. На сегодняшний день я просто выполнил замену текста переменной привязки в TOAD с помощью списка, разделенного запятыми, и это работает отлично, но немного раздражает для разных списков значений. Кроме того, у меня есть несколько запросов этой формы, которые я тестирую таким образом, поэтому я искал менее пешеходный способ ввода списка значений в TOAD без изменения запроса. Если это невозможно, я продолжу пешеходный подход.

toad variable prompt

+1

Возможный дубликат [sqlplus - использование переменной привязки в разделе «IN»] (http://stackoverflow.com/questions/4973809/sqlplus-using-a-bind-variable-in-in-clause) – OldProgrammer

+0

I не видите, как это дубликат этого вопроса. Вы говорите, что ответ Джерата о том, что «вы не можете использовать значения, разделенные запятыми, в одной переменной привязки», применяется к диалогу TOAD выше так же, как это применимо к показанному там блоку PL/SQL? – pierus

+0

Это правильно. Это не имеет никакого отношения к TOAD. Вы либо должны использовать другие методы, чтобы «разбить» строку на отдельные элементы данных (как показано в двойном ответе), либо использовать отдельные переменные в запросе, такие как «in (: v1,: v2,: v3 ...) ; – OldProgrammer

ответ

1

Как указано OldProgrammer, ответ Gerrat, что «Вы не можете использовать точку с запятой значений в одной переменном связывании» в указанном потоке правильно отвечает на этот вопрос, а также.

 Смежные вопросы

  • Нет связанных вопросов^_^