Как автоматически заполнить параметры SQL-запроса? - PullRequest
0 голосов
/ 23 мая 2019

У меня есть запрос, подобный приведенному ниже:

select ct.ID,
           ct.B_CODE,
           ct.G_F_ID,
           ct.T_CD,
           ct.STATUS,
           ct.E,
           ? as TYPE_CODE
    from ln.CUSTOMER ct
    where 1 = 1
      AND B_CODE = ?
      AND G_F_ID = ?
      AND INSERT_DATE > ?
      AND INSERT_DATE < ?
      AND STATUS in (?, ?, ?, ?);

, а значения его параметров приведены в массиве, разделенном запятой, например:

[50, 1001, 1734508, 2019-01-13, 2019-01-13, 10, 20, 30, 40]

Для тестирования этого запроса всераз я должен поместить параметры массива один за другим последовательно в соответствующем месте в запросе вместо?персонажи.Окончательный запрос будет выглядеть следующим образом:

 select ct.ID,
      ct.B_CODE,
      ct.G_F_ID,
      ct.T_CD,
      ct.STATUS,
      ct.E,
      50 as TYPE_CODE
    from ln.CUSTOMER ct
    where 1 = 1
    AND B_CODE = 1001
    AND G_F_ID = 1734508
    AND INSERT_DATE > 2019-01-13
    AND INSERT_DATE < 2019-01-13
    AND STATUS in (10, 20, 30, 40);

Иногда этот массив слишком длинный (в нем 100 элементов), и он мешает, и выполнение этого без инструмента также подвержено ошибкам.Есть ли какой-нибудь инструмент или плагин в Intellij IDEA, чтобы преодолеть эту проблему?Или я должен сам написать плагин?

1 Ответ

0 голосов
/ 24 мая 2019

Используйте Пользовательские параметры , чтобы заменить их фактическими значениями на момент выполнения:

enter image description here

...