好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

SQLite 数据类型

SQLite 数据类型是一个用来指定任何对象的数据类型的属性。SQLite 中的每一列,每个变量和表达式都有相关的数据类型。

您可以在创建表的同时使用这些数据类型。SQLite 使用一个更普遍的动态类型系统。在 SQLite 中,值的数据类型与值本身是相关的,而不是与它的容器相关。

 

SQLite 存储类

每个存储在 SQLite 数据库中的值都具有以下存储类之一:

存储类 描述
NULL 值是一个 NULL 值。
INTEGER 值是一个带符号的整数,根据值的大小存储在 1、2、3、4、6 或 8 字节中。
REAL 值是一个浮点值,存储为 8 字节的 IEEE 浮点数字。
TEXT 值是一个文本字符串,使用数据库编码(UTF-8、UTF-16BE 或 UTF-16LE)存储。
BLOB 值是一个 blob 数据,完全根据它的输入存储。

SQLite 的存储类稍微比数据类型更普遍。INTEGER 存储类,例如,包含 6 种不同的不同长度的整数数据类型。

 

SQLite Affinity 类型

SQLite 支持列上的 类型 affinity  概念。任何列仍然可以存储任何类型的数据,但列的首选存储类是它的  affinity 。在 SQLite3 数据库中,每个表的列分配为以下类型的 affinity 之一:

Affinity 描述
TEXT 该列使用存储类 NULL、TEXT 或 BLOB 存储所有数据。
NUMERIC 该列可以包含使用所有五个存储类的值。
INTEGER 与带有 NUMERIC affinity 的列相同,在 CAST 表达式中带有异常。
REAL 与带有 NUMERIC affinity 的列相似,不同的是,它会强制把整数值转换为浮点表示。
NONE 带有 affinity NONE 的列,不会优先使用哪个存储类,也不会尝试把数据从一个存储类强制转换为另一个存储类。

 

SQLite Affinity 及类型名称

下表列出了当创建 SQLite3 表时可使用的各种数据类型名称,同时也显示了相应的应用 Affinity:

数据类型 Affinity

INT

INTEGER

TINYINT

SMALLINT

MEDIUMINT

BIGINT

UNSIGNED BIG INT

INT2

INT8

INTEGER

CHARACTER(20)

VARCHAR(255)

VARYING CHARACTER(255)

NCHAR(55)

NATIVE CHARACTER(70)

NVARCHAR(100)

TEXT

CLOB

TEXT

BLOB

no datatype specified

NONE

REAL

DOUBLE

DOUBLE PRECISION

FLOAT

REAL

NUMERIC

DECIMAL(10,5)

BOOLEAN

DATE

DATETIME

NUMERIC

 

Boolean 数据类型

SQLite 没有单独的 Boolean 存储类。相反,布尔值被存储为整数 0(false)和 1(true)。

 

Date 与 Time 数据类型

SQLite 没有一个单独的用于存储日期和/或时间的存储类,但 SQLite 能够把日期和时间存储为 TEXT、REAL 或 INTEGER 值。

存储类 日期格式
TEXT 格式为 "YYYY-MM-DD HH:MM:SS.SSS" 的日期。
REAL 从公元前 4714 年 11 月 24 日格林尼治时间的正午开始算起的天数。
INTEGER 从 1970-01-01 0 UTC 算起的秒数。

您可以以任何上述格式来存储日期和时间,并且可以使用内置的日期和时间函数来自由转换不同格式。

查看更多关于SQLite 数据类型的详细内容...

  阅读:18次

上一篇

下一篇

第1节:SQLite Alter实例讲解    第2节:SQLite AND和OR 实例应用    第3节:SQLite drop table 删除表    第4节:SQLite Delete实例应用    第5节:SQLite Distinct 实例    第6节:SQLite Explain(解释)    第7节:SQLite Glob 语法与实例    第8节:SQLite Like 实例讲解    第9节:SQLite Insert into 插入数据    第10节:SQLite Group By 实例    第11节:SQLite Limit 应用    第12节:SQLite Indexed By    第13节:SQLite Joins实例    第14节:SQLite Group By Having 实例    第15节:SQLite 简介    第16节:SQLite 教程    第17节:SQLite Update 实例    第18节:SQLite Where 实例讲解    第19节:SQLite 表达式    第20节:SQLite 创建表create table    第21节:SQLite 如何安装    第22节:SQLite Select 查询语句    第23节:SQLite Order By 应用分析    第24节:SQLite 触发器实例详解    第25节:SQLite 别名    第26节:SQLite NULL 详解    第27节:SQLite Unions 实例    第28节:SQLite Pragma 讲解    第29节:SQLite 常用函数大全    第30节:SQLite Vacuum    第31节:SQLite 运算符大全    第32节:SQLite 数据库分离    第33节:SQLite 附加数据库    第34节:SQLite 创建数据库    第35节:SQLite 数据类型    第36节:SQLite 语法大全    第37节:SQLite 命令    第38节:SQLite 索引 Index 实例详解    第39节:SQLite 子查询实例讲解    第40节:SQLite 事务 Transaction实例介绍    第41节:SQLite 视图(View)实例详解    第42节:SQLite 类似Truncate Table语句    第43节:SQLite 约束实例详解    第44节:SQLite 自动递增    第45节:SQLite 防注入    第46节:SQLite 日期与时间