第二章 数据库基本操作和数据类型.ppt
文本预览下载声明
Mysql数据类型 每种列类型都有几个特性如下: 其中可以存放什么类型的值。 值要占据多少空间,以及该值是否是定长的(所有值占相同数量的空间)或可变长的(所占空间量依赖于所存储的值)。 该类型的值怎样比较和存储。 此类型是否允许 NULL 值。 此类型是否可以索引。 数据类型 数字型 日期和时间 字符型 二进制 如何选择数据类型 整形(1) 整形类型 TINYINT 1 1-255 SMALLINT 2 MEDIUMINT 3 INT 4 INTEGER 4 BIGINT 8 整形(2) 显示宽度 默认宽度 AUTO_INCREMENT 自增属性 设置显示宽度数据真正的宽度 宽度设置失效 设置显示宽度数据真正的宽度 默认用空格填充 在zerofill参数配合使用的情况下 显示的时候补零 浮点型和定点型 浮点型 float Double 使用 数据类型 m,d float(7,3) 直接使用 float 没指定精度,保存实际精度 定点型 Decimal 使用 数据类型 m,d 直接使用 decimal 默认保存10个整数位,0个小数位 浮点型和定点型 存储方式 浮点型采用二进制浮点的存储规则,有一定的误差 定点型采用字符串存储方式,无误差的,无损失 超出指定精度 浮点型四舍五入不警告 建议 不是特殊情况不使用 定点发出警告 数据类型 数字型 日期和时间 字符型 二进制 如何选择数据类型 时间日期型 year date time datetime timestamp YAER 基本资料 表示年份,占用一个字节,能够表示范围1901-2155 表示形式YYYY 赋值注意事项 插入时‘2008’和2008相同 如果超出范围自动转换0000 两位插入1-69转换为21世纪,70-99转换成20世纪的时间 如果0 转换为0000 但是如果‘0’转换成2000 TIME 基本资料 表示时间,占用3个字节,能够表示范围 -838:59:59~838:59:59,表示形式HH:MM:SS 赋值注意事项 ‘HH:MM:SS’、 ‘HH:MM’、 ‘D HH:MM:SS’、 ‘D HH:MM’ 、 ‘D HH’、’SS’、’HHMMSS’ ‘0’、0 转换为00:00:00 CURRENT_TIME 或 NOW输入当前时间 DATE 基本资料 表示时间,占用4个字节,能够表示范围 1000-01-01~9999-12-31 表示形式YYYY-MM-DD 赋值注意事项 ‘YYYY-MM-DD’、 ‘YYYYMMDD’ 、 ‘YYYY/MM/DD’、 ‘YYYY.MM.DD’等任何分隔符 ‘YY-MM-DD’、‘YYMMDD’ 00~69 和70~99 0 转换为0000:00:00 datetime是记录日期最合适的选择 DATETIME(1) 基本资料 表示时间,占用8个字节,能够表示范围 1000-01-01 00:00:00~9999-12-31 23:59:59, 表示形式:YYYY-MM-DD HH:MM:SS DATETIME(2) 赋值注意事项 ‘YYYY-MM-DD HH:MM:SS’ ‘YYYYMMDDHHMMSS’ 任何字符分割 ‘YY-MM-DD HH:MM:SS’ 0 转换为0000-00-00 00:00:00 NOW输入当前时间 TIMESTAMP 与DATETIME相似 区别 占4个字节 范围1970-01-01 08:00:01~2038-01-19 11:14:07 可以按照时区显示 数据类型 数字型 日期和时间 字符型 二进制 如何选择数据类型 字符串类型 char varchar text enum set char varchar char varchar 都制定最大长度 基本定义形式 char(M)OR varchar (M) 超出最大长度报错 区别 char(M)在定义同时分配M长度 varchar (M)按照实际情况分配存储空间 TEXT 只能保存字符型数据 包括 tinytext text mediumtext longtext 只有长度和存储空间的不同 ENUM 枚举型 定义的基本形式 属性名 enum(’值1‘,‘值2’,……) 例如:性别 euum(‘男’,‘女’) 是否为空属性 默认可以为空 如设置not null 默认选择第一个 SET 定义的基本形式 属性名 SET(’值1‘,‘值2’,……) 例如:爱好 set(‘打游戏’
显示全部