Complete query migration
This commit is contained in:
@@ -73,23 +73,26 @@ object Parameters {
|
||||
when (param.type) {
|
||||
ParameterType.NUMBER -> {
|
||||
when (param.value) {
|
||||
null -> stmt.setNull(idx, Types.NULL)
|
||||
is Byte -> stmt.setByte(idx, param.value)
|
||||
null -> stmt.setNull(idx, Types.NULL)
|
||||
is Byte -> stmt.setByte(idx, param.value)
|
||||
is Short -> stmt.setShort(idx, param.value)
|
||||
is Int -> stmt.setInt(idx, param.value)
|
||||
is Long -> stmt.setLong(idx, param.value)
|
||||
else -> throw DocumentException(
|
||||
is Int -> stmt.setInt(idx, param.value)
|
||||
is Long -> stmt.setLong(idx, param.value)
|
||||
else -> throw DocumentException(
|
||||
"Number parameter must be Byte, Short, Int, or Long " +
|
||||
"(${param.value::class.simpleName})")
|
||||
"(${param.value::class.simpleName})"
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
ParameterType.STRING -> {
|
||||
when (param.value) {
|
||||
null -> stmt.setNull(idx, Types.NULL)
|
||||
null -> stmt.setNull(idx, Types.NULL)
|
||||
is String -> stmt.setString(idx, param.value)
|
||||
else -> stmt.setString(idx, param.value.toString())
|
||||
else -> stmt.setString(idx, param.value.toString())
|
||||
}
|
||||
}
|
||||
|
||||
ParameterType.JSON -> stmt.setString(idx, Configuration.json.encodeToString(param.value))
|
||||
}
|
||||
}
|
||||
@@ -108,11 +111,10 @@ object Parameters {
|
||||
*/
|
||||
fun fieldNames(names: Collection<String>, parameterName: String = ":name") =
|
||||
when (Configuration.dialect("generate field name parameters")) {
|
||||
Dialect.POSTGRESQL -> listOf(Parameter(parameterName, ParameterType.STRING, if (names.size == 1) {
|
||||
names.elementAt(0)
|
||||
} else {
|
||||
names.joinToString(",").let { "{$it}" }
|
||||
}))
|
||||
Dialect.POSTGRESQL -> listOf(
|
||||
Parameter(parameterName, ParameterType.STRING, names.joinToString(",").let { "{$it}" })
|
||||
)
|
||||
|
||||
Dialect.SQLITE -> names.mapIndexed { index, name ->
|
||||
Parameter("$parameterName$index", ParameterType.STRING, name)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user