📅  最后修改于: 2021-01-04 04:55:27             🧑  作者: Mango
SQLite数据类型是一个属性,用于指定任何对象的数据类型。每个列,变量和表达式在SQLite中都有相关的数据类型。
您将在创建表时使用这些数据类型。 SQLite使用更通用的动态类型系统。在SQLite中,值的数据类型与值本身(而不是其容器)相关联。
存储在SQLite数据库中的每个值都具有以下存储类别之一-
Sr.No. | Storage Class & Description |
---|---|
1 |
NULL The value is a NULL value. |
2 |
INTEGER The value is a signed integer, stored in 1, 2, 3, 4, 6, or 8 bytes depending on the magnitude of the value. |
3 |
REAL The value is a floating point value, stored as an 8-byte IEEE floating point number. |
4 |
TEXT The value is a text string, stored using the database encoding (UTF-8, UTF-16BE or UTF-16LE) |
5 |
BLOB The value is a blob of data, stored exactly as it was input. |
SQLite存储类比数据类型更通用。例如,INTEGER存储类包括6种不同长度的不同整数数据类型。
SQLite支持列上的类型相似性的概念。任何列仍然可以存储任何类型的数据,但列的首选存储类称为亲和性。 SQLite3数据库中的每个表列都分配了以下类型关联性之一-
Sr.No. | Affinity & Description |
---|---|
1 |
TEXT This column stores all data using storage classes NULL, TEXT or BLOB. |
2 |
NUMERIC This column may contain values using all five storage classes. |
3 |
INTEGER Behaves the same as a column with NUMERIC affinity, with an exception in a CAST expression. |
4 |
REAL Behaves like a column with NUMERIC affinity except that it forces integer values into floating point representation. |
5 |
NONE A column with affinity NONE does not prefer one storage class over another and no attempt is made to coerce data from one storage class into another. |
下表列出了各种数据类型名称,这些名称可以在创建具有相应应用相似性的SQLite3表时使用。
Data Type | Affinity |
---|---|
|
INTEGER |
|
TEXT |
|
NONE |
|
REAL |
|
NUMERIC |
SQLite没有单独的布尔存储类。相反,布尔值存储为整数0(假)和1(真)。
SQLite没有用于存储日期和/或时间的单独存储类,但是SQLite能够将日期和时间存储为TEXT,REAL或INTEGER值。
Sr.No. | Storage Class & Date Formate |
---|---|
1 |
TEXT A date in a format like “YYYY-MM-DD HH:MM:SS.SSS” |
2 |
REAL The number of days since noon in Greenwich on November 24, 4714 B.C. |
3 |
INTEGER The number of seconds since 1970-01-01 00:00:00 UTC |
您可以选择以任何一种格式存储日期和时间,并使用内置的日期和时间功能在格式之间自由转换。