7.mysql 数据类型(tcy)

数据类型 2019/2/7

1.常量

1.1十六进制值:-默认字符串:

mysql> SELECT x'4D7953514C';#'MySQL'
mysql> SELECT 0xa+0;       #10 作为数字用CAST(...AS UNSIGNED):mysql> SELECT 0x41,CAST(0x41 AS UNSIGNED);#65#A HEX()函数将字符串或数字转换为十六进制格式字符串:mysql> SELECT HEX('cat');#'636174'mysql> SELECT 0x636174;#'cat' 
1.2. 布尔值:常量TRUE等于1,常量FALSE等于0。常量名可以写成大写或小写

mysql> SELECT TRUE,true,FALSE,false;
       -> 1,1,0,0 
1.3. 位字段值:b'value'符号写位字段值:

mysql> CREATE TABLE t (b BIT(8));

mysql> INSERT INTO t SET b = b'11101101';


1.4. NULL值:


NULL值表示“没有数据”大小写。null用序列\n表示
1.5字符串:

字符串指用单引号或双引号引起来的字符序列。SQL服务器模式启用NSI_QUOTES用单引号引用字符串。
用双引号引用识别符。字符串可以有一个可选字符集引介词和COLLATE子句:

[_charset_name]'string' [COLLATE collation_name]SELECT _latin1'string'; 
SELECT _latin1'string' COLLATE latin1_danish_ci; 

转义字符:

\0 ASCII 0(NUL)字符;\'单引号(‘'’);\"双引号(‘"’);\b    退格符;\n换行符;\r回车符;
\t tab字符;\\ 反斜线(‘\’)字符;\% ‘%’字符;\_    ‘_’字符;\Z    ASCII 26(控制(Ctrl)-Z),该字符可以编码为‘\Z’ 

字符串列内插入二进制数据(如BLOB),必须通过转义序列表示下面的字符:

NUL ,反斜线,单引号,双引号 

实例:字符串中包括引号

mysql> SELECT 'hello', '"hello"', '""hello""', 'hel''lo', '\'hello';
             | hello | "hello" | ""hello"" | hel'lo | 'hello |

mysql> SELECT "hello", "'hello'", "''hello''", "hel""lo", "\"hello";
             | hello | 'hello' | ''hello'' | hel"lo | "hello |  


2.数据类型:

 
分类 类型 字节 说明 备注 用途
整数 TINYINT 1 (-128,127)   最小整数
整数 BIT 1 (-128,127)   最小整数
整数 BOOL 1 (-128,127) 值0视为false非0值为真 最小整数
整数 SMALLINT 2 (-32 768,32 767)   小整数值
整数 MEDIUMINT 3 (-8 388 608,8 388 607)   中整数值
整数 INT 4 (-2 147 483 648,2 147 483 647)   标准整数
整数 BIGINT 8 (+-9,223,372,036,854,775,807)   大整数值
整数 FLOAT 4  +-3.402 823 466e+38   单精度
整数 DOUBLE 8 (+-1.797 693 134 862 315 7 E+308,   双精度
整数     +-2.225 073 858 507 201 4 E-308)    
整数 DECIMAL 可变 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 精确值 一般整数
日期 DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
日期 TIME 3 '-838:59:59'/'838:59:59' HH:MM:SS 时间值或持续时间
日期 YEAR 1 1901/2155 YYYY 年份值
日期 DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
日期 TIMESTAMP 4 1970/1/1  0:00:00-2038-1-19 03:14:07 YYYYMMDD HHMMSS 时间戳
字符 CHAR 255 char(m)[binary|ascii|unicode]   定长字符串
字符 VARCHAR 255 char,varchar在存储或检索过程中不进行大小写转换   变长字符串
字符 TINYBLOB 255 utf8一个汉字3字节GBK2字节 变长 二进制字符串
字符 TINYTEXT 255   变长 短文本字符串
字符 BLOB 65535   变长 二进制文本
字符 TEXT 65535   变长 文本数据
字符 MEDIUMBLOB 2^24-1   变长 二进制中文本
字符 MEDIUMTEXT 2^24-1   变长 中文本
字符 LONGBLOB 2^32-1   变长 二进制大文本
字符 LONGTEXT 2^32-1   变长 大文本
           
说明:char(n) 若字符数小于n以空格补其后,查询时再去掉。char字符串末尾不能有空格,varchar 不限于此。

猜你喜欢

转载自blog.csdn.net/tcy23456/article/details/86771989