本文分两部分:
第一部分:MySQL 常用数据字段类型介绍
第二部分:SQLite 常用数据字段类型介绍
第一部分:MySQL 数据库常用字段类型
文本类型
Char(M):保存固定长度的字符串(可包含字母,数字以及特殊字符)。在括号中指定字符串的长度,最多255个字符。(M个字节)
VarChar(M):保存可变的字符串(可包含字母,数字以及特殊字符),在括号中指定字符串最大长度,最多255个字符。如果值得长度大于255,则被转换为 TEXT 类型。(M个字节)
TinyText:存放最大长度为255个字符的字符串。
Text:存放最大长度为 65,535 个字符的字符串。
LongTest:存放最大长度为 4,294,967,295 个字符的字符串。
Number 类型
TinyInt(size):-128 到 127 常规。0 到 255 无符号,在括号中规定最大位数。(1个字节)
Int(size):-2147483648 到 2147483647 常规。0 到 4294967295 无符号。在括号中规定最大数。(4个字节)
BigInt(size):-9223372036854775808 到 9223372036854775807 常规。0 到18446744073709551616 无符号,在括号中规定最大数。(8个字节)
Bit:无符号[0,255],天缘博客备注:BIT和BOOL布尔型都占用1字节。(1个字节)
SmallInt:无符号[0,65535],有符号[-32768,32767]。(2个字节)
MediumInt:无符号[0,2^24-1],有符号[-2^23,2^23-1]]。(3个字节)
Float(M,D):单精度浮点数。天缘博客提醒这里的D是精度,如果D<=24则为默认的FLOAT,如果D>24则会自动被转换为DOUBLE型。(4个字节)
Double(M,D):双精度浮点。(8个字节)
Date 类型
Date:格式YYYY-MM-DD,从1000-01-01 到 9999-12-31。(3个字节)
Datetime:格式YYYY-MM-DD HH:MM:SS,从1000-01-01 00:00:00到 9999-12-31 23:59:59。(8个字节)
TimeStamp:以YYYY-MM-DD的格式显示,比如:2009-07-19。(4个字节)
Time:格式 HH:MM:SS。从-838:59:59 到 838:59:59。(3个字节)
Year:以YYYY的格式显示,比如:2009。(1个字节)
总结:
1、Char:一般用于存储较短的名称。
2、VarChar:存储较长或者可能会大于255个字符的名称,因为超过后会自动转为Text类型。
3、Text:存储较长的文本。
4、TinyInt:存储程序中一些状态字段 。
5、BigInt:存储ID,如:程序中的主键,订单ID等。
第二部分:SQLite 数据库常用字段类型
SQLite采用的是动态数据类型,会根据存入值自动判断。以下SQLite五种数据类型:
NULL:空值。
INTEGER:带符号的整型,具体取决有存入数字的范围大小。
REAL:浮点数字,存储为8-byte IEEE浮点数。
TEXT:字符串文本。
BLOB:二进制对象。
但程序中我们实际用的以下字段(Sqlite3也接受如下的数据类型):
INTEGER:存储基本数据类型字段。(8个字节)
CHAR:固定长度的字串。
VARCHAR:长度不固定的字符串,比较常用。
DATE:包含了 年份、月份、日期。
TIME:包含了 小时、分钟、秒。
TIMESTAMP:包含了 年、月、日、时、分、秒、千分之一秒。
TEXT:字符串文本。
REAL:浮点数字,存储为8-byte IEEE浮点数。
BLOG:二进制对象。
SMALLINT:比Int少两个字节。
FLOAT:单精度类型。(4个字节)
DOUBLE:双精度浮点。(8个字节)
BINARY:存储二进制。
总结:
1、Char:一般用于存储较短的名称。
2、VarChar:存储较长或者可能会大于255个字符的名称,因为超过后会自动转为Text类型。。常用
3、Text:存储较长的文本,
4、INTEGER:存储程序中一些状态字段 。
5、BIGINT:存储用户ID 或者 服务器返回的时间戳等。
其他数据库字段类型,小编后续会补充,希望大家留言给我。