• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > mysql 列类型

mysql 列类型

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了mysql,列类型等相关知识,希望本文的分享对您有所帮助
列类型
整型 tinyint,smallint,mediumint,int,bigint (可选参数unsigned ,(M,zerofill,结合使用才有意义))
浮点型 float(可选参数D,M) decimal(可选参数D,M)
字符串型 char(M) varchar(M) text-文本类型
日期时间类型 date,time,datatime,year

给表追加一个列,列类型为无符号tinyint

alter table [vg] add [id] tinyint unsigned not null default 0;

表中可存入255的id

insert into vg
(sname,id)
values
('test',255);

#分析M参数

alter table vg add age1 tinyint(1) not null default 0;
insert into vg class (sname,age1) values ('M1',3);
insert into vg (sname,age1) values ('agin M',99);

#这时候M是没有意义的

select * from vg;
+--------+-----+-------+------+------+
| sname | age | socre | test | age1 |
+--------+-----+-------+------+------+
| 刘备 | 28 | 0 | 0 | 0 |
| 张飞 | 0 | -1 | 0 | 0 |
| test | 0 | 0 | 255 | 0 |
| M1 | 0 | 0 | 0 | 3 |
| agin M | 0 | 0 | 0 | 99 |
+--------+-----+-------+------+------+

#M必须和zerofill配合才有意义

增加列

alter table vg add snum smallint(5) zerofill not null default 0;
insert into vg (sname,snum) values ('吕布',1);
insert into vg (sname,snum) values ('廖化',15);
select * from vg;
+--------+-----+-------+------+------+-------+
| sname | age | socre | test | age1 | snum |
+--------+-----+-------+------+------+-------+
| 刘备 | 28 | 0 | 0 | 0 | 00000 |
| 张飞 | 0 | -1 | 0 | 0 | 00000 |
| test | 0 | 0 | 255 | 0 | 00000 |
| M1 | 0 | 0 | 0 | 3 | 00000 |
| agin M | 0 | 0 | 0 | 99 | 00000 |
| 吕布 | 0 | 0 | 0 | 0 | 00001 |
| 廖化 | 0 | 0 | 0 | 0 | 00015 |
+--------+-----+-------+------+------+-------+

#比较上一个显示,能看出M和zerofill结合的意义
#总结:M表示补0的宽度,和zerofill结合使用才有意义

char(M) 定义之后每个列的存储长度是固定的,M个固定编码(utf8,gbk)长度 (查询速度比较快,造成一定资源浪费)
类比于:不管远近,投币一元的公交,对短途造成浪费

varchar(M) 长度可以是(0--<M) 根据具体存入的字符个数决定(会加入一个头记录记录字符的长度,用于查找)(查询速度稍慢,资源利用率一定程度会比较高)
类比于:分段收费,需要增加一个售票员记录远近收费

以上就是mysql 列类型的内容,更多相关内容请关注微课江湖()!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 分享下mysql各个主要版本之间的差异
  • MySQL essential版本和普通版本有什么区别?
  • redhat 5.4下安装MYSQL全过程
  • 如何用SQL命令查看Mysql数据库大小
  • 解析mysql中如何获得数据库的大小
  • 解析mysql修改为utf8后仍然有乱码的问题
  • 5个常用的MySQL数据库管理工具详细介绍
  • 解析在MySQL里创建外键时ERROR 1005的解决办法
  • 解析远程连接管理其他机器上的MYSQL数据库
  • mysql 精简过程(删除一些文件)

相关文章

  • 2017-05-11Linux中使用mysqladmin extended-status配合Linux命令查看MySQL运行状态
  • 2018-12-05mysql中替代null的IFNULL()与COALESCE()函数详解_Mysql
  • 2018-12-05SQLServer 数据修复命令DBCC一览
  • 2017-05-11大幅优化MySQL查询性能的奇技淫巧
  • 2018-12-05关于NodeJs如何使用Mysql模块实现事务处理实例
  • 2018-12-05mysql 操作符
  • 2018-12-05Oracle Connect to Idle Instance解决方法
  • 2018-12-05SQL 正则表达式及mybatis中使用正则表达式
  • 2018-12-05MYSQL中的int(11)代表什么
  • 2018-12-05mysql 优化(4)索引覆盖和最优索引

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • 21条MySQL优化建议(经验总结)
    • mysql获取group by总记录行数的方法
    • sqlserver存储过程中SELECT 与 SET 对变量赋值的区别
    • CentOS 6.5 下安装MySQL 5.7.12详细步骤(图文)
    • win2003 mysql单向同步配置步骤[已测]
    • 恢复从 Access 2000、 Access 2002 或 Access 2003 中数据库删除
    • 《python基础教程》笔记之条件语句和循环语句
    • mysql优化连接数防止访问量过高的方法
    • mysql如何实现多行查询结果合并成一行
    • ERROR 1222 (21000): The used SELECT statements have a different number of columns

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有