Проверка, является ли поле GroovyRowResult пустой строкой - PullRequest
0 голосов
/ 07 июня 2018

Я использую sql.firstRow, чтобы проверить, существует ли строка в базе данных postgres по некоторым критериям.

def cur = sql.firstRow(r, '''
                                SELECT "some_thing"
                                FROM "my_table"
                                WHERE "customer_name" = :customer_name
                                AND "sad_date" = :sad_date
                                AND "forgiver" = :forgiver
                            ''')

Я считаю, что это работает:

if (cur){
      log.debug("Found Some thing " + cur["some_thing"])
      log.debug("Cur: " + cur.keySet())
}

однако этопозволяет вводить любые строки, в которых отсутствует поле some_field.

ISSUE

Чтобы избежать этого, когда мы пытаемся проверить наличие непустого значения дляsome_field в строке результатов, например:

if (cur && "${cur.some_thing}" ){
  log.debug("Found Some thing " + cur["some_thing"])
}

ОШИБКА

Я получаю ошибку , предполагающую:

No signature of `String.positive` for argument types for the given type. 

Я прочитал этот вопрос и изменил с cur.some_thing и cur['some_thing'] на "$ {cur.some_thing}", но ошибка не исчезла

У меня также естьпопробовал этот пост и попытался использовать cur.getProperty("some_thing") и все равно выдает ту же ошибку.

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