- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
mysql燕子18记笔记
Mysql三大列类型
数值型
整型
Tinyint、Smallint、Mediumint、Int、Bigint
小数型
Float(D,M),Decimal(D,M)
字符串型
Char(M)
Varchar(M)
Text 文本类型
日期时间类型
Date 日期
Time 时间
Datetime 时间类型
Year年类型
整型列的字节与存储范围
从数学上讨论tinyint,建表时既能足够存放,又不浪费空间。
即:
(1). 占据空间
(2). 存储范围
Tinyint微小的列类型,1字节。
类型
字节
最小值
最大值
(带符号/无符号)
(带符号/无符号)
Tinyint
1
-128
127
0
255
Smallint
2
-32768
32767
0
65535
Mediumint
3
-2^23
2^23-1
0
2^24-1
Int
4
-2^31
2^31-1
0
2^32-1
Bigint
8
-2^63
2^63-1
0
2^64-1
通过占用字节和所存范围分关系合理的选择类型。
例:Tinyint
经测试,Tinyint的默认为有符号-128~127之间,当越界时自动取相应的边界值。若要存0~255无符号时:
列的可选属性:
Tinyint(M) unsigned zerofill.
M:宽度(在0填充的时候才有意义)
Unsigned:无符号类型(非负),影响存储范围
Zerofill: 0填充(默认无符号)
列可以声明默认值,而且推荐声明默认值 not null default 0;
小数型/浮点型、定点型
Float(M,D):M代表总位数,D代表小数位
(6,2)为例:-9999.99 –9999.99
Decimal(D,M) :
字符型列
Char:定长,char(M),M代表宽度,即:可容纳的字符数0=M=255
Varchar:变长,0=M=65535(约2W—6W个字符受字符集影响)
Text文本串,(约2W—6W个字符受字符集影响)
区别在哪呢?
char定长:M个字符,如果存的小于M个字符,实占M个字符
varchar:M个字符,存的小于M个字符,设为N,NM,实占N个字符
因此,char定长若存空格,读取时会丢失。而变长不会。
Char利用率小于等于100%,而varchar永远小于100%,1-2个字节用于标志实存字符长度。
Char(M)如何占据M个字符宽度?
答:如果实际存储内容不足M个,则后面加空格补齐,取出来的时候再把后面的空格去掉,(所以如果内容后面有空格,将会被清除)
选择原则:
空间利用效率(M固定选Char)
速度
速度上:定长速度快些,
日期时间列类型
Date 日期
Time 时间
Datatime 时间类型
Year 年类型
Year类型:1个字节表示1901-2155年【0000年表示错误时】
如果输入两位,“00--69”表示2000—2069,
如果输入两位“70--99”表示1970—1999
如果记得麻烦,输入四位就行了、
Date类型:典型格式,1992-08-12
‘1000-01-01’ ?’9999-12-31’
Time 类型,典型格式 hh:mm:ss
‘-838:59:59’?’+838:59:59’
Datetime 典型格式:’1989-05-06 12:23:34’
‘1000-01-01 00:00:00’? ‘9999-12-31 23:59:59`
注意:
在开发中很少使用日期时间类型来表示一个需要精确到秒的列,原因:虽然日期时间类型能够精确到秒,而且方便查看。但是计算不便。用时间戳来表示。
时间戳: 1970-01-01 00:00:00 到当前的秒数
面试1:
当表示性别时,可用1或0表示男女,如,
可能会问到为什么不用enum枚举,原因:enum不符合关系型数据库设计理念,而且字节上不比tinyint少。
实例:
增删改查之案例过程分析
用户注册表单收集,提交数据,注册页面收集到表单的数据后,形成insert语句,user表插入该条数据,用户注册完成
前台用户中心,用户新昵称,根据新昵称和用户id,形成update语句,完成昵称修改
管理后台点击会员列表,此时,网页形成select语句,查询出所有会员的数据,完成会员的查看
管理员后台选中某用户并且删除,捕捉此用户的id,根据用户id形成相应的delete语句
执行delete语句,完成用户的删除。
阶段总结(一)
列类型的概念
数值型
整型 tinyint smallint mediumint int bigint
整型的unsi
您可能关注的文档
最近下载
- 汽修公司汽车修理汽车保养突发环境应急预案.docx VIP
- 某水库除险加固工程施工组织设计.doc VIP
- 全国预防接种技能竞赛理论训练题库及答案(中华人民共和国疫苗管理法212题).docx VIP
- 2025年(完整)人教精通版小学英语3-6年级单词词汇表 .pdf VIP
- 天翼云认证解决方案架构师考试题及答案(新版).doc VIP
- 港迪HF659系列变频器使用说明书V100(G20200812).pdf VIP
- 水库除险加固工程施工组织设计120页.doc VIP
- 《农业政策热点培训》课件.ppt VIP
- 申凌门机NSFC01-01A控制器操作手册.pdf
- 从大食物观角度出发的中国饲料粮供给安全问题探讨.docx VIP
文档评论(0)