Mysql数据类型,校对集操作辩析.docx

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
校对集,collate校对集指的是字符之间的比较关系!如:a B c 三个字母如何排序?在 ASCII 码下的排序为:B a c在mysql命令客户端下,使用 order by 对结果排序,看结果:顺序为 a-B-c 忽略了大小写!但是这种顺序可以被校对集改变:利用 show collation; 语句,可以查看所有的校对集校对集,依赖于字符集校对集:指的是,在某个字符集下,字符的排序关系应该是什么,称之为校对集!再创建一个utf8_bin校对集表,再对 a,B,c 进行排序:?create table collate_2 (c varchar(10)) charset=utf8 collate=utf8_bin;再插入同样的三个字母:insert into collate_2 values(a),(B),(c);排序结果如下:典型的后缀:_bin :二进制编码层面直接比较_ci :忽略大小写比较(大小写不敏感)_cs:大小写第三比较MYSQL数据类型(列类型,字段类型)三大类:数值,字符串,日期时间数值整数型类型字节最小值(有符号/无符号)最大值(有符号/无符号)tinyint1-128/0127/255smallint2-32768/032767/65535mediumint3-838860816777215int/intege4-2147483648/02147483647/4294967295bigint8-9223372036854775808/09223372036854775807/18446744073709551615如何选择:通过业务逻辑判断!常见的是 int , tinyint !mysql的整型,有php整型不具备的概念:1:无符号,只能表示整数或0。那么最大的整数会很大????默认是有符号!可通过整型的 unsigned 选项, int unsigned 设置整型无符号2:显示宽度????显示宽度不决定整数的范围,而决定在显示出该数之后,如果宽度不够,则采用前导零补齐。此时需要 zerofill 来设置如:create table type_int_3 (num int unsigned zerofill);insert into type_int_3 values (0);insert into type_int_3 values (1000);insert into type_int_3 values (1000000);可见,无符号,默认的宽度是10,因此全都使用0来补齐可以设置整型的显示宽度! int(M) 即可! M 最大为 255!M的值不决定范围,只决定显示宽度!create table type_int_4 (num int(30) unsigned zerofill);insert into type_int_4 values (0);insert into type_int_4 values (1000);insert into type_int_4 values (1000000);注意:如果走出了宽度范围,则直接显示!额外的,mysql中,没有布尔型!但存在 Boolean 这个关键字,表示 tinyint(1)典型的,0表示假,1表示真????小数类型类型存储空间(字节)最小值(理论)最大值(理论)FLOAT4-3.402823466E+383.402823466E+38DOUBLE8-1.7976931348623157E+3081.7976931348623157E+308DECIMAL变长,大致是每9个数字,采用4个字节存储。整数和分数分开计算M,最大是65D,最大是30默认是10,2-(65个9)(+65个9)单精度、双精度默认的有效位数:在定义浮点数时,典型的需要指明其有效位数,和小数位数float(M,D);double(M,D);M:所有的有效位数D:其中的小数位数以上两个值,决定一个浮点数的有效范围!典型的浮点数:float(10,2);注意:浮点数是近似值,不是精确值!如果一个数,很大,接近最大值,可能会出错一旦出现精确数据(小数)需要保存,则要用到定点数。定点数:小数点是固定的!decimal,与定义浮点数一样,也有有效位数与小数位数的概念:decimal(M,D);不是数的形式存储,类似于字符串的形式存储!注意:关于小数1:支持科学计数法2:同样支持 unsigned,无符号3:同样支持 zerofill?字符串类型类型最大长度备注char255Char(M),M字符数varchar65535,但需要1-2个保存信息,同时由于记录的限制,因此最大为65532编码不同字符数不同:Gbklt;=32767Utf8lt;=21845tiny

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档