零刻度十进制类型
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
零刻度十进制数,例如 DECIMAL(10)
或 NUMBER(10, 0)
,实际上是一种具有十进制精度而不是二进制/位精度整数类型。某些数据库(例如 Oracle)根本不支持实际的整数类型,仅支持十进制类型。从历史上看,jOOQ 生成最合适的整数包装类型,而不是 BigDecimal
或 BigInteger
-
NUMBER(2, 0)
及以下:java.lang.Byte
-
NUMBER(4, 0)
及以下:java.lang.Short
-
NUMBER(9, 0)
及以下:java.lang.Integer
-
NUMBER(18, 0)
及以下:java.lang.Long
如果这不是所需的默认设置,则可以使用 强制类型在每个列的基础上显式停用,也可以使用以下标志全局停用
XML(独立和 Maven)
编程方式
Gradle (Kotlin)
Gradle (Groovy)
Gradle(第三方)
<configuration> <generator> <database> <forceIntegerTypesOnZeroScaleDecimals>true</forceIntegerTypesOnZeroScaleDecimals> </database> </generator> </configuration>
有关更多详细信息,请参见配置 XSD、独立代码生成和 Maven 代码生成。
new org.jooq.meta.jaxb.Configuration() .withGenerator(new Generator() .withDatabase(new Database() .withForceIntegerTypesOnZeroScaleDecimals(true) ) )
import org.jooq.meta.jaxb.* configuration { generator { database { isForceIntegerTypesOnZeroScaleDecimals = true } } }
有关更多详细信息,请参见配置 XSD和 Gradle 代码生成。
configuration { generator { database { forceIntegerTypesOnZeroScaleDecimals = true } } }
有关更多详细信息,请参见配置 XSD和 Gradle 代码生成。
// The jOOQ-codegen-gradle plugin has been introduced in version 3.19. // Please use the official plugin instead of the third party plugin that was recommended before.
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!