replace params begin by _

This commit is contained in:
2019-08-24 23:39:23 +02:00
parent e42f3b07cb
commit ae96bfd737
2 changed files with 4 additions and 4 deletions

View File

@@ -215,12 +215,12 @@ class Connection(
val paramRegex = "(?<!:):([a-zA-Z0-9_-]+)".toRegex(RegexOption.IGNORE_CASE)
val newArgs = paramRegex.findAll(sql).map { match ->
val name = match.groups[1]!!.value
values[name] ?: error("Parameter $name missing")
values[name] ?: values[name.trimStart('_')] ?: error("Parameter $name missing")
}.toList()
var newSql = sql
values.forEach { (key, _) ->
val regex = ":$key".toRegex()
val regex = ":_?$key".toRegex()
newSql = newSql.replace(regex, "?")
}

View File

@@ -195,11 +195,11 @@ class Function(val definition: Function, override val connection: Connection): E
val parameters = definition.getParametersIndexedByName()
val placeholders = values
.filter { entry ->
val parameter = parameters[entry.key] ?: error("Parameter ${entry.key} not exist")
val parameter = parameters[entry.key] ?: parameters["_"+entry.key] ?: error("Parameter ${entry.key} not exist")
parameter.default === null || entry.value !== null
}
.map { entry ->
val parameter = parameters[entry.key]!!
val parameter = parameters[entry.key] ?: parameters["_"+entry.key] ?: error("Parameter ${entry.key} not exist")
""""${parameter.name}" := :${parameter.name}::${parameter.type}"""
}