准备插入语句以便将表示 IP 地址的字符串插入到“inet”类型的 Postgres 列中的正确方法是什么?
val rDate = LocalDateTime.parse("2018-12-29T02:47:17").toJavaLocalDateTime()
val iDate = LocalDateTime.parse("2018-12-29T22:11:00").toJavaLocalDateTime()
val ip = "192.168.1.10"
dslcontext.insertInto(IP_LIST)
.columns(IP_LIST.RECV_DATE, IP_LIST.INSERT_DATE, IP_LIST.SENDER_IP)
.values(rDate, iDate, ip)
.execute()
我假设cast()应该应用于值'ip',但我一直找不到一个有效的例子。
我已经安装了 jooq 和 org.jooq:jooq-postgres-extensions:3.19.11 并运行正常,并且 可以做选择。
如果您已将
jooq-postgres-extensions
库放在代码生成器和运行时的类路径上,则无需执行任何特定操作。只需将您的值包装在 org.jooq.postgres.extensions.types.Inet
中并使用它,例如
Inet ip = inet(InetAddress.getByName("192.168.0.1"));
dslcontext.insertInto(IP_LIST)
.columns(IP_LIST.RECV_DATE, IP_LIST.INSERT_DATE, IP_LIST.SENDER_IP)
.values(rDate, iDate, ip)
.execute()