基礎(chǔ)數(shù)據(jù)類型
Lindorm支持通過(guò)簡(jiǎn)單的SQL語(yǔ)句完成數(shù)據(jù)的查詢、分析和管理。為了更好地處理數(shù)據(jù),在創(chuàng)建表前,您需要了解Lindorm SQL支持的基礎(chǔ)數(shù)據(jù)類型及相關(guān)使用限制。
適用引擎
基礎(chǔ)數(shù)據(jù)類型適用于寬表引擎和時(shí)序引擎。
基礎(chǔ)數(shù)據(jù)類型
數(shù)據(jù)類型 | 寬表引擎 | 時(shí)序引擎 | 對(duì)應(yīng)的Java類型 | 描述 |
BOOLEAN | 〇 | 〇 | java.lang.Boolean | 長(zhǎng)度為1字節(jié)。布爾型,取值為true或false。 |
TINYINT | 〇 | ?? | java.lang.Byte | 長(zhǎng)度為1字節(jié)。定長(zhǎng)精確數(shù)值類型。取值范圍取決于長(zhǎng)度,以及數(shù)值中有無(wú)符號(hào)。 |
SMALLINT | 〇 | ?? | java.lang.Short | 長(zhǎng)度為2字節(jié)。定長(zhǎng)精確數(shù)值類型。取值范圍取決于長(zhǎng)度,以及數(shù)值中有無(wú)符號(hào)。 |
INTEGER | 〇 | ?? | java.lang.Integer | 長(zhǎng)度為4字節(jié)。定長(zhǎng)精確數(shù)值類型。取值范圍取決于長(zhǎng)度,以及數(shù)值中有無(wú)符號(hào)。 |
BIGINT | 〇 | 〇 | java.lang.Long | 長(zhǎng)度為8字節(jié)。定長(zhǎng)精確數(shù)值類型。取值范圍取決于長(zhǎng)度,以及數(shù)值中有無(wú)符號(hào)。 |
FLOAT | 〇 | ?? | java.lang.Float | 長(zhǎng)度為4字節(jié)。定長(zhǎng)非精確數(shù)值類型。取值范圍和精度取決于長(zhǎng)度、precision和scale,以及數(shù)值中有無(wú)符號(hào)。 |
DOUBLE | 〇 | 〇 | java.lang.Double | 長(zhǎng)度為8字節(jié)。定長(zhǎng)非精確數(shù)值類型。取值范圍和精度取決于長(zhǎng)度、precision和scale,以及數(shù)值中有無(wú)符號(hào)。使用SQL語(yǔ)句拼寫時(shí),按照科學(xué)計(jì)數(shù)法的方式來(lái)表示DOUBLE類型的值。 |
DECIMAL(precision,scale) | 〇 | ?? | java.lang.BigDecimal | 變長(zhǎng)二進(jìn)制類型。DECIMAL為十進(jìn)制,消耗的字節(jié)數(shù)隨精度的增加而增加,通常用于存儲(chǔ)金額等高精度數(shù)據(jù),對(duì)于精度要求不高的場(chǎng)景(例如監(jiān)控),可以使用FLOAT或DOUBLE。定義類型時(shí)需要指定precision和scale。
|
VARCHAR / CHAR(N) | 〇 | 〇 | java.lang.String | 字符串,支持中文。
|
BINARY(N) | 〇 | ?? | byte[] | 定長(zhǎng)二進(jìn)制類型,N表示字節(jié)數(shù)。寫入數(shù)據(jù)時(shí),包含以下兩種情況:
|
VARBINARY | 〇 | ?? | byte[] | 變長(zhǎng)二進(jìn)制類型,作為主鍵時(shí)只能是最后一列主鍵。 |
DATE | 〇 | ?? | java.sql.Types#DATE | 日期時(shí)間(僅存儲(chǔ)日期,不存儲(chǔ)時(shí)間。在時(shí)區(qū)轉(zhuǎn)換過(guò)程中易出現(xiàn)日期錯(cuò)誤的現(xiàn)象,不推薦使用)。 |
TIME | 〇 | ?? | java.sql.Types#TIME | 時(shí)間類型。 |
TIMESTAMP | 〇 | 〇 | java.sql.Types#TIMESTAMP | 時(shí)間戳。 |