Pass string into SQL WHERE IN

Я работаю на странице запроса, где пользователь выбирает значение, представляющее различные типы, каждый из которых идентифицируется идентификатором. Проблема заключается в выборе этих идентификаторов из базы данных методом ГДЕ ИН.

Это мой SQL-оператор

SELECT M.REG_NO, T.TYPE_ID 
    FROM MAIN AS M 
        INNER JOIN CLASSIFICATION AS C 
            ON M.REG_NO = C.REG_NO
        INNER JOIN TYPE AS T 
            ON T.TYPE_ID = C.TYPE_ID
    WHERE T.TYPE_ID IN (@Types)

, он будет работать для одного единственного значения, например, 46, но НЕ в том случае, если значение заключено в скобки, например, (46) или ('46'), то так, как это должно быть для IN.

Я использую визуальную студию, которая автоматически генерирует метод доступа к табличному адаптеру для получения значений, так что я думаю, что мне НАСТОЯТЕЛЬНО делать это через SQL.

Я передаю строку, например, Types = "46,267,2010", в метод-адаптер, который передает строку в операторе SQL в @Types.

Любая помощь была бы замечательной. Спасибо!

5
задан jva 28 September 2016 в 19:19
поделиться