- 6
- 0
- 约7.82千字
- 约 9页
- 2017-04-23 发布于北京
- 举报
SQLite支持数据类型详解
HYPERLINK /hummersofdie/archive/2010/10/26/1861757.html SQLite3 数据类型
NULL?INTEGER?REAL?TEXT?BLOB?但实际上,sqlite3也接受如下的数据类型:?smallint 16 位元的整数。?interger 32 位元的整数。?decimal(p,s) p 精确值和 s 大小的十进位整数,精确值p是指全部有几个数(digits)大小值,s是指小数点後有几位数。如果没有特别指定,则系统会设为 p=5; s=0 。?float?? 32位元的实数。?double?? 64位元的实数。?char(n)?? n 长度的字串,n不能超过 254。?varchar(n) 长度不固定且其最大长度为 n 的字串,n不能超过 4000。?graphic(n) 和 char(n) 一样,不过其单位是两个字元 double-bytes, n不能超过127。这个形态是为了支援两个字元长度的字体,例如中文字。?vargraphic(n) 可变长度且其最大长度为 n 的双字元字串,n不能超过 2000?date?? 包含了 年份、月份、日期。?time?? 包含了 小时、分钟、秒。?timestamp 包含了 年、月、日、时、分、秒、千分之一秒。
?
1.存储类别?第二版把所有列的值都存储成ASCII文本格式。第三版则可以把数据存储成整数和实数,还可以存储BLOB数据.
Each value stored in an SQLite数据库中存储的每个值都有一个属性,都属于下面所列类中的一种,(被数据库引擎所控制)
NULL: 这个值为空值
INTEGER: 值被标识为整数,依据值的大小可以依次被存储为1,2,3,4,5,6,7,8.
REAL: 所有值都是浮动的数值,被存储为8字节的IEEE浮动标记序号.
TEXT: 值为文本字符串,使用数据库编码存储(TUTF-8, UTF-16BE or UTF-16-LE).
BLOB: 值是BLOB数据,如何输入就如何存储,不改变格式.
像SQLite2.0版一样,在3.0版中,除了INTEGER PRIMARY KEY,数据库中的任何列都可以存储任何类型的数据.这一规则也有例外,在下面的严格相似模式中将描述.
输入SQLite的所有值,不管它是嵌入 SQL语句中的文字还是提前编译好的绑定在SQL语句中的值,在SQL语句执行前都被存储为一个类.在下面所描述的情况下,数据库引擎将在执行时检查并把值在数字存储类(整数和实数)和文本类间转换.
存储的类别最初被分类为如下:
具体的值比如SQL语句部分的带双引号或单引号的文字被定???为文本,如果文字没带引号并没有小数点或指数则被定义为整数,如果文字没带引号但有小数点或指数则被定义为实数,如果值是空则被定义为空值.BLOB数据使用符号XABCD来标识.
Values supplied using the 被输入的值使用sqlite3_bind_* APIs的被分类一个存储等级,这等级是和原来的类基本相一致的. (比如sqlite3_bind_blob()绑定一个BLOB的值).
值的分类是SQL分等级操作的结果,决定于最远的操作表达式.用户定义的功能也许会把值返回任意的类.在编译的时候来确定表达式的存储类基本是不可能的.
2. 列之间的亲和性?在SQLite3.0版中,值被定义为什么类型只和值自身有关,和列没有关系,和变量也没有关系. (这有时被称作 弱类型.)所有其它的我们所使用的数据库引擎都受静态类型系统的限制,其中的所有值的类是由其所属列的属性决定的,而和值无关.
为了最大限度的增加SQLite数据库和其他数据库的兼容性,SQLite支持列的类型亲和性. 列的亲和性是为该列所存储的数据建议一个类型.我们要注意是建议而不是强迫.在理论上来讲,任何列依然是可以存储任何类型的数据的. 只是针对某些列,如果给建议类型的话,数据库将按所建议的类型存储.这个被优先使用的数据类型则被称为亲和类型.
在SQLite3.0版中,数据库中的每一列都被定义为以下亲和类型中的一种:
文本?数字的?整数?无?一个具有类型亲和性的列按照无类型,文本,或BLOB存储所有的数据.如果数字数据被插入一个具有文本类型亲和性的列,在存储之前数字将被转换成文本.
一个具有数字类型亲和性的列也许使用所有的五个存储类型存储值.当文本数据被插入一个数字列时,在存储之前,数据库将尝试着把文本转换成整数或实数.如果能成功转换的话,值将按证书活实数的类型被存储. 如果不能 成功转换的话,值则只能按文本类型存储了,而不会被转换成无类型或BLOB类型来存储.
一个具有整数亲和力
您可能关注的文档
- Oligo6-0软件的教程.doc
- OracleVPD—20100323.doc
- ORACLE数据库专周汇报.doc
- p2p的发展和应用论文.docx
- Oracle表的类型和定义.doc
- OSH应急和响应计划.doc
- P3里不可缺少231首歌.doc
- p2p流媒体技术和原理.doc
- OSTA考点的操作的步骤.doc
- PAM调制和解调系统设计.doc
- Unit5GoingonanexchangetripWriting课件-沪教版英语八年级上册.pptx
- 嘉兴市2025-2026学年(上期)高一期末考试政治试卷(含答案).pdf
- 合肥六中等学校2025-2026学年(上期)高二期末考试历史试卷(含答案).pdf
- 安徽A10联盟2025-2026学年(上期)高一期末考试语文A试卷(含答案).pdf
- 阳泉市2025-2026学年(上期)高一期末考试历史试卷(含答案).pdf
- 2025-2026学年北京市通州区高三(上期)期末考试政治试卷(含答案).pdf
- 内蒙古巴彦淖尔盟2025-2026学年(上期)高二期末考试英语试卷(含答案).pdf
- 安徽A10联盟2025-2026学年(上期)高一期末考试语文B试卷(含答案).pdf
- 2025-2026学年北京市通州区高三(上期)期末考试政治试卷(含答案).docx
- 关于我市学校收取直饮水费的分析思考.pdf
原创力文档

文档评论(0)