NULL,INTEGER,REAL,TEXT,BLOB
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 包含了 年、月、日、时、分、秒、千分之一秒。
参考:
type | description |
---|---|
TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOB,BYTEA | String types of unlimited length. Binary data must be safely encoded,see text. |
CHAR(),VARCHAR(),TINYTEXT,TEXT,MEDIUMTEXT,LONGTEXT | String types of unlimited length. There is no chopping or padding performed by the database engine. |
ENUM | String type of unlimited length. In contrast to MysqL,choosing ENUM over VARCHAR does not save any storage space. |
SET | String type of unlimited length. In contrast to MysqL,the input is not checked against the list of allowed values. |
YEAR | String type of unlimited length. MysqL stores 2 or 4 digit years as a 1 byte value,whereas the sqlite drivers stores the string as provided. |
TINYINT,INT1,CHAR | A 1 byte type used to store one character,a signed integer between -128 and 127,or an unsigned integer between 0 and 255. |
SMALLINT,INT2 | 2 byte (short) integer type used to store a signed integer between -32768 and 32767 or an unsigned integer between 0 and 65535. |
MEDIUMINT | 3 byte integer type used to store a signed integer between -8388608 and 8388607 or an unsigned integer between 0 and 16777215. |
INT,INTEGER,INT4 | 4 byte (long) integer type used to store a signed integer between -2147483648 and 2147483647 or an unsigned integer between 0 and 4294967295. |
BIGINT,INT8,INTEGER PRIMARY KEY | 8 byte (long long) integer type used to store a signed integer between -9223372036854775808 and 9223372036854775807 or an unsigned integer between 0 and 18446744073709551615. See below for a discussion of INTEGER PRIMARY KEY. |
DECIMAL,NUMERIC | A string type of unlimited length used to store floating-point numbers of arbitrary precision. |
TIMESTAMP,DATETIME | A string type of unlimited length used to store date/time combinations. The required format is 'YYYY-MM-DD HH:MM:SS',anything following this pattern is ignored. |
DATE | A string type of unlimited length used to store a date. The required format is 'YYYY-MM-DD',anything following this pattern is ignored. |
TIME | A string type of unlimited length used to store a time. The required format is 'HH:MM:SS',anything following this pattern is ignored. |
FLOAT,FLOAT4,REAL | A 4 byte floating-point number. The range is -3.402823466E+38 to -1.175494351E-38,and 1.175494351E-38 to 3.402823466E+38. Please note that MysqL treats REAL as an 8 byte instead of a 4 byte float like Postgresql. |
DOUBLE,DOUBLE PRECISION,FLOAT8 | An 8 byte floating-point number. The range is -1.7976931348623157E+308 to -2.2250738585072014E-308,and 2.2250738585072014E-308 to 1.7976931348623157E+308. |