sqlite 数据类型 全面
http://blog.csdn.net/jin868/article/details/5961263
一般数据采用的固定的静态数据类型,而SQLite采用的是动态数据类型,会根据存入值自动判断。SQLite具有以下五种数据类型:
1.NULL:空值。
2.INTEGER:带符号的整型,具体取决有存入数字的范围大小。
3.REAL:浮点数字,存储为8-byte IEEE浮点数。
4.TEXT:字符串文本。
5.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 包含了 年、月、日、时、分、秒、千分之一秒。
datetime 包含日期时间格式,必须写成'2010-08-05'不能写为'2010-8-5',否则在读取时会产生错误!
Sqlite常用数据类型,
这句话本身就有问题,因为:SQLite是无类型的. 这意味着你可以保存任何类型的数据到你所想要保存的任何表的任何列中, 无论这列声明的数据类型是什么(只有自动递增Integer Primary Key才有用). 对于SQLite来说对字段不指定类型是完全有效的. 如:
Create Table ex3(a, b, c);
即使SQLite允许忽略数据类型, 但是仍然建议在你的Create Table语句中指定数据类型. 因为数据类型对于你和其他的程序员交流, 或者你准备换掉你的数据库引擎是非常有用的. SQLite支持常见的数据类型, 如:
- CREATE TABLE ex2(
- a VARCHAR(10),
- b NVARCHAR(15),
- c TEXT,
- d INTEGER,
- e FLOAT,
- f BOOLEAN,
- g CLOB,
- h BLOB,
- i TIMESTAMP,
- j NUMERIC(10,5),
- k VARYING CHARACTER (24),
- l NATIONAL VARYING CHARACTER(16)
- );
char、varchar、text和nchar、nvarchar、ntext的区别
1、CHAR。CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间,不足的自动用空格填充。
2、VARCHAR。存储变长数据,但存储效率没有CHAR高。如果一个字段可能的值是不固定长度的,我们只知道它不可能超过10个字符,把它定义为 VARCHAR(10)是最合算的。VARCHAR类型的实际长度是它的值的实际长度+1。为什么“+1”呢?这一个字节用于保存实际使用了多大的长度。从空间上考虑,用varchar合适;从效率上考虑,用char合适,关键是根据实际情况找到权衡点。
3、TEXT。text存储可变长度的非Unicode数据,最大长度为2^31-1(2,147,483,647)个字符。
4、NCHAR、NVARCHAR、NTEXT。这三种从名字上看比前面三种多了个“N”。它表示存储的是Unicode数据类型的字符。我们知道字符中,英文字符只需要一个字节存储就足够了,但汉字众多,需要两个字节存储,英文与汉字同时存在时容易造成混乱,Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示。nchar、nvarchar的长度是在1到4000之间。和char、varchar比较起来,nchar、nvarchar则最多存储4000个字符,不论是英文还是汉字;而char、varchar最多能存储8000个英文,4000个汉字。可以看出使用nchar、nvarchar数据类型时不用担心输入的字符是英文还是汉字,较为方便,但在存储英文时数量上有些损失。
所以一般来说,如果含有中文字符,用nchar/nvarchar,如果纯英文和数字,用char/varchar。
sqlite 数据类型 全面相关推荐
- SQLite 数据类型(http://www.w3cschool.cc/sqlite/sqlite-data-types.html)
SQLite 数据类型 SQLite 数据类型是一个用来指定任何对象的数据类型的属性.SQLite 中的每一列,每个变量和表达式都有相关的数据类型. 您可以在创建表的同时使用这些数据类型.SQLite ...
- sqlite数据类型、关键词及创建、修改、删除数据表
//摘自:http://www.cnblogs.com/caizhimin816/articles/1885290.html 谢谢! sqlite数据类型.关键词及创建.修改.删除数据表 Posted ...
- mysql中real数据类型,SQLite 数据类型 | 菜鸟教程
SQLite 数据类型 SQLite 数据类型是一个用来指定任何对象的数据类型的属性.SQLite 中的每一列,每个变量和表达式都有相关的数据类型. 您可以在创建表的同时使用这些数据类型.SQLite ...
- SQLite学习笔记(3)-SQLite数据类型
SQLite 数据类型 SQLite 数据类型是一个用来指定任何对象的数据类型的属性.SQLite 中的每一列,每个变量和表达式都有相关的数据类型. 您可以在创建表的同时使用这些数据类型.SQLite ...
- SQLite 数据类型
一般数据采用的固定的静态数据类型,而SQLite采用的是动态数据类型,会根据存入值自动判断.SQLite具有以下五种数据类型: 1.NULL:空值. 2.INTEGER:带符号的整型,具体取决有存入数 ...
- sqlite java blob_【转】好东西!sqlite3中BLOB数据类型存储大对象运用示例
1:常用接口 个人比较喜欢sqlite, 使用最方便,唯一的准备工作是下载250K的源:而且作者很热心,有问必答. 以下演示一下使用sqlite的步骤,先创建一个数据库,然后查询其中的内容.2个重要结 ...
- SQLite入门之数据类型
2019独角兽企业重金招聘Python工程师标准>>> SQLite入门之数据类型 2011-05-23 16:47:47 来源:SeaYee 最近在开发一个可以记录日志的程序,要 ...
- sqlite读音_SQLite 数据类型
SQLite 数据类型 参考: SQLite 数据类型 | 菜鸟教程 http://www.runoob.com/sqlite/sqlite-data-types.html SQLite 数据类型是一 ...
- Android开发学习笔记:数据存取之SQLite浅析
一.SQLite的介绍 1.SQLite简介 SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入 式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低 ...
最新文章
- 要求用户提供输入,直到他们给出有效的答复
- centos树莓派安装mysql_用树莓派实现网络批量自动安装CentOS
- Linux 将文件夹下的所有文件复制到另一个文件里
- spotlight监控linux性能
- 主导精准脱贫-农业大健康·万祥军:恩施谋定硒功能性产业链
- LeetCode 767. 重构字符串(堆)
- arm9260 linux编译,关于linux9260烧写软件和gdb调试器的使用
- OSTU大律法二值化原理
- java 裁剪 pdf_java – 使用iTextPDF修剪页面的空白
- 注册商标需要多长时间
- 地图学(何宗宜版)知识点整理
- python自动下载论文_教你如何利用Python批量下载论文
- 称呼大全,亲戚称呼,祖宗十八代的称呼!
- linux下如何查看cpu温度
- CreateFile函数详解 不仅仅是对文件的操作 还有对系统设备的IO的操作
- 以太坊系列(二)---Ubuntu20.04安装以太坊开发环境并建立私有链
- 【数据库原理】Transact-SQL
- 谷歌身份验证器 手表_6条使您的三星手表更加Google-y的提示
- 英文不好到底能不能学会编程?
- StandardEngine[Catalina].StandardHost[localhost].StandardContext[]
热门文章
- 知名的php cms,20款最为知名的开源PHP CMS
- android函数未定义,android – 方法findViewById(int)未定义
- Oracle11g 修改数据库编码(UTF-8修改为GBK)
- python数据生成正态分布图_Python 与金融数据生成机器学习的特征数据
- 位运算判断奇偶数_位运算符判断奇偶
- 未经审视的人生是不值得过的
- 三十八、商业智能与ETL基础知识
- 以后再也不去字节面试了…
- 别傻了,你还认为 count(1) 比 count(*) 效率高?
- 别眨眼!AI 通过自学秒解魔方,比人类纪录快两倍