MySQL数据库项目式教程 MySQL数据库第3章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.1.4 MySQL日期类型
date表示日期,默认格式为‘YYYY-MM-DD’; time表示时间,格式为‘HH:mm:ss’; year表示年份; datetime与timestamp是日期和时间的混合类 型,格式为'YYYY-MM-DD HH:mm:ss'
日期 类型
date
time
类型
bigint
类型
类型
类型
类型
类型
3.1.1 MySQL整数类型
整数类型的数,默认情况下既可以表示正 整数又可以表示负整数(此时称为有符号 数)。如果只希望表示零和正整数,可以使 用无符号关键字“unsigned”对整数类型进 行修饰(此时称为无符号整数)。
例如:score tinyint unsigned
MySQL提供的数据
类型包括数值类型
6 MySQL二进制类型
(整数类型和小数类
型)、字符串类型、 7 为字段选择合适的数据类型
日期类型、复合类型
(复合类型包括
enum类型和set类型)
以及二进制类型 。
3.1.1 MySQL整数类型
整数 类型
tinyint smallint mediumint int
decimal(length, precision)用于表示精度确定 (小数点后数字的位数确定)的小数类型,length 决定了该小数的最大位数,precision用于设置精度 (小数点后数字的位数)。
例如: decimal (5,2)表示小数取值范围:-999.99~999.99 decimal (5,0)表示: -99999~99999的整数。
9223372036854775807)
(0,65535) (0,16777215) (0,4294967295)
(0,18446744073709551615)
3.1.2 MySQL小数类型
小数 类型
精确小数 类型
浮点数 类型
decimal
float
double
精确类型 单精度类型 双精度类型
3.1.2 MySQL小数类型
3.1.2 MySQL小数类型
类型 字节数
负数的取值范围
float 4 double 8
-3.402823466E+38到-1.175494351E-38
-1.7976931348623157E+308到2.2250738585072014E-308
非负数的取值范围
0和1.175494351E-38到3.402823466E+38 0和2.2250738585072014E-308到 1.7976931348623157E+308
将NULL插入timestamp字段后,该字段的值 实际上是MySQL服务器当前的日期和时间。 ➢ 同一个timestamp类型的日期或时间,不 同的时区,显示结果不同。
3.1.4 MySQL日期类型
任务布置1:理解datetime与timestamp之间 的区别。 上机操作,完成本书场景描述1以及场景描述 2的任务要求,理解datetime与timestamp之 间的区别。 学会使用now()函数。 注意:now()函数用于获得MySQL服务器的 当前时间,该时间与时区的设置密切相关。
3.1 MySQL数据类型
MySQL提供的数据
类型包括数值类型
1 MySQL整数类型
(整数类型和小数类 型)、字符串类型、 2 MySQL小数类型
日期类型、复合类型 (复合类型包括
3 MySQL字符串类型
enum类型和set类型) 4 MySQL日期类型 以及二进制类型 。
5 MySQL复合类型
3.1 MySQL数据类型
、数量 • 4.订单表orders • 订单号、用户编号、订单日期、商品介绍、订单总价、订单状态 • 5.订单明细表lineitem • 订单号、商品编号、数量、单价
内容一览
本章详细讲解 “选课系统”数据 库各个表的实施过 程,通过本章的学 习,读者可以掌握 表结构管理的相关 知识。
1 MySQL数据类型 2 创建表 3 修改表结构 4 删除表 5 索引
3.1.1 MySQL整数类型
类型 字节数
范围(有符号)
范Biblioteka Baidu(无符号)
tinyint 1字节
(-128,127)
(0,255)
smallint 2字节 mediumint 3字节
int 4字节
bigint 8字节
(-32768,32767)
(-8388608,8388607) (-2147483648,2147483647) (-9233372036854775808,
longtext 文本类型
3.1.3 MySQL字符串类型
char()与varchar():存储或检索过程中不进行大小 写转换。对于简体中文字符集gbk的字符串而言, varchar(255)表示可以存储255个汉字,而每个 汉字占用两个字节的存储空间。假如这个字符串 没有那么多汉字,例如仅仅包含一个‘中’字,那 么varchar(255)仅仅占用1个字符(两个字节) 的储存空间,另加一个字节记录长度. varchar(1000)需要多大空间? 而char(255)则必须占用255个字符长度的存储空 间,哪怕里面只存储一个汉字。 Char、archar,当存储或检索尾部带空格的字符 串时有什么区别。
类型
year datetime timestamp
类型
类型
类型
3.1.4 MySQL日期类型
datetime(8字节)与timestamp(4字节) 都是日期和时间的混合类型,区别在于: ➢ 表示的取值范围不同,datetime的取值范 围远远大于timestamp的取值范围。
datetime 保存的时间范围较大,年的数字在:1000---9999之间 timestamp 保存的时间较小,年的数字在:1970 --2037 之间
3.1.3 MySQL字符串
字符串 类型
char 定长字符串类型
变长字符串类型
字符串类型的数据外观 上使用单引号括起来,例 如学生姓名'张三'、课程名 'java程序设计'等。
varchar 变长字符串类型
text 文本类型
tinytext 文本类型
text 文本类型
mediumtext 文本类型
MySQL数据库基础与实例教程
之
MySQL表结构的管理
任务:为petstore数据库表选择合适的数据类型
• 1.用户表account • 用户编号、用户名、密码、性别、住址、邮箱、电话 • 2.商品分类表category • 类别编号、分类名称、类别描述 • 3.商品表product • 商品编号、类别编号、商品名、商品介绍、市场价格、成本价格