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