本书根据应用型人才教育培养的特点,结合教学改革和企业实践编写而成。教材以企业实践项目——“新闻发布系统”的开发过程为主线,以数据库开发技术为中心,结合常用的开发语言,贯通如下内容:MySQL的安装部署、数据模型、数据库与数据表、运算符与函数、索引、数据完整性、数据查询、视图、存储过程、触发器、用户和数据安全、编程接口等。
第1 章 MySQL管理环境的建立 1
1.1 数据库课程定位 1
1.1.1 岗位需求 1
1.1.2 课程定位 2
1.2 数据库的基础知识 3
1.2.1 数据库与数据库管理系统 3
1.2.2 数据库技术的发展史 3
1.2.3 数据库系统模型 6
1.2.4 常见数据库简介 6
1.3 MySQL环境的建立 8
1.3.1 Windows平台下安装配置MySQL 8
1.3.2 界面工具MySQL GUI Tools 10
1.3.3 界面工具phpMyAdmin 10
实训1 11
课后习题1 15
第2 章 数据模型的设计 16
2.1 数据库建模技术 16
2.1.1 数据模型 16
2.1.2 软件项目开发周期 17
2.2 数据库概念模型设计 19
2.2.1 概念模型 19
2.2.2 概念设计应用实例 21
2.3 数据库逻辑设计 22
2.3.1 将E-R图转换为关系模型 23
2.3.2 优化关系模型 24
实训2 24
课后习题2 26
第3 章 创建新闻发布系统的数据库和表 27
3.1 使用SQL语句操作数据库 28
3.1.1 创建数据库 28
3.1.2 查看数据库 28
3.1.3 选择数据库 29
3.1.4 修改数据库 29
3.1.5 删除数据库 29
3.2 使用SQL语句创建数据表 30
3.2.1 数据表的基础知识 30
3.2.2 使用SQL语句创建数据表 32
3.3 使用SQL语句操作数据表 34
3.3.1 修改数据表 34
3.3.2 修改表名 34
3.3.3 删除数据表 35
3.4 管理数据表数据 35
3.4.1 插入记录 35
3.4.2 修改记录 37
3.4.3 删除记录 37
实训3 39
课后习题3 40
第4 章 MySQL运算符与函数 42
4.1 MySQL运算符 43
4.1.1 算术运算符 43
4.1.2 比较运算符 43
4.1.3 逻辑运算符 47
4.1.4 位运算符 48
4.1.5 运算符的优先级 48
4.2 系统内置函数 48
4.2.1 数学函数 49
4.2.2 字符串函数 51
4.2.3 日期和时间函数 54
4.2.4 系统信息函数 57
4.2.5 其他函数 58
实训4 58
课后习题4 59
第5 章 新闻发布系统的索引与完整性约束 61
5.1 创建与管理索引 61
5.1.1 索引概念 62
5.1.2 索引分类 62
5.1.3 创建索引 62
5.1.4 删除索引 64
5.2 数据完整性约束 64
5.2.1 主键约束 65
5.2.2 外键约束 66
5.2.3 非空约束 67
5.2.4 唯一约束 67
5.2.5 自动增长约束 68
5.2.6 默认值约束 68
5.2.7 删除完整性约束 69
实训5 69
课后习题5 70
第6 章 新闻发布系统的数据查询和视图查询 72
6.1 使用SELECT语句查询数据 73
6.1.1 简单查询 73
6.1.2 条件查询 76
6.1.3 使用ORDER BY查询排序 78
6.1.4 使用GROUP BY子句分组查询 80
6.1.5 使用LIMIT子句 81
6.2 多表连接查询 82
6.2.1 内连接 82
6.2.2 外连接 83
6.2.3 自连接 85
6.3 嵌套查询 86
6.3.1 嵌套查询概述 86
6.3.2 单值嵌套 86
6.3.3 多值嵌套 87
6.3.4 [NOT] EXISTS子查询 88
6.4 视图 89
6.4.1 视图的概念与特点 89
6.4.2 视图应用实例 92
6.4.3 管理视图 94
实训6 95
课后习题6 96
第7 章 存储过程和触发器 98
7.1 存储过程 99
7.1.1 认识存储过程 99
7.1.2 创建存储过程 100
7.1.3 局部变量的使用 101
7.1.4 流程控制的使用 101
7.2 操作存储过程 105
7.2.1 调用存储过程 105
7.2.2 修改存储过程 105
7.2.3 删除存储过程 106
7.3 触发器 106
7.3.1 认识触发器 106
7.3.2 触发器基本操作 107
7.3.3 触发器应用实例 109
实训7 112
课后习题7 113
第8 章 用户和数据安全 115
8.1 添加和删除用户 115
8.1.1 添加用户 115
8.1.2 删除用户 116
8.1.3 修改用户名 117
8.1.4 修改密码 117
8.2 权限管理 117
8.2.1 权限 118
8.2.2 授予权限 119
8.2.3 回收权限 121
实训8 122
课后习题8 123
第9 章 访问MySQL数据库 124
9.1 Java访问MySQL数据库 124
9.1.1 JDBC驱动的下载与安装 124
9.1.2 连接MySQL的Java类和接口 127
9.1.3 Java访问MySQL应用实例 129
9.2 C#访问MySQL数据库 134
9.2.1 C#驱动的下载与安装 134
9.2.2 C#访问MySQL基本操作 136
9.2.3 C#访问MySQL实例 141
实训9 149
课后习题9 150
第10 章 PHP+MySQL开发企业新闻系统 151
10.1 企业新闻系统设计 152
10.1.1 新闻发布系统概述 152
10.1.2 安装AppServ软件 152
10.1.3 新闻数据库设计 156
10.1.4 定义news站点 157
10.1.5 设置数据库连接 159
10.2 新闻管理系统后台开发 159
10.2.1 后台整体规划 160
10.2.2 用户登录 160
10.2.3 发布新闻 161
10.2.4 操作新闻 167
10.3 企业新闻系统前台设计 172
10.3.1 网站前台基本设置 172
10.3.2 新闻列表页设计 173
10.3.3 新闻内容页设计 175
10.3.4 新闻分类页设计 176
10.3.5 热门新闻和最新动态 177
参考文献 179
前言
经过多年课程建设、校企合作和教学改革的反复探索,我们的数据库课程教学模式也在不断发展之中,现正朝着“教学做一体化、工作过程系统化、教学项目真实化”的方向前进。本教材在编写过程中突出职业能力的培养,通过一个企业的真实项目——“新闻发布系统”的完整实施过程,将MySQL数据库开发的相关内容有条不紊地组织起来。全书按照“新闻管理系统”开发的工作顺序组织内容,使学习过程与工作过程保持一致;内容由易到难,循序渐进,符合人类认知规律;各章都配备了实训和课后练习题,能激发学生的学习热情和动力,并从中体会到学习和“工作”的双重乐趣。
本书的内容组织如下表所示。
项目
\\t名称
\\t工作目标
\\t涉及主要知识
1
\\tMySQL管理环境的建立
\\t在现有环境(Windows 或Linux)中安装配置MySQL
\\tMySQL的下载、安装、配置
2
\\t数据模型的设计
\\t进行关系模型设计
\\tE-R图、概念设计、逻辑设计
3
\\t创建新闻发布系统的数据库和表
\\t创建新闻发布系统数据库和表
\\t数据类型、表、数据库
4
\\tMySQL运算符与函数
\\t掌握运算符和函数
\\t运算符、函数
5
\\t新闻发布系统的索引与完整性约束
\\t使用约束和触发器实现数据完整性
\\t约束、数据完整性、触发器
6
\\t新闻发布系统的数据查询和视图查询
\\t使用查询或视图完成新闻检索
\\t查询、视图
7
\\t存储过程和触发器
\\t使用存储过程和触发器实现新闻管理
\\t存储过程、触发器
8
\\t用户和数据安全
\\t保护数据安全
\\t安全、权限
9
\\t访问MySQL数据库
\\t开发应用系统
\\tJava、C#连接MySQL
10
\\tPHP+MySQL开发企业新闻系统
\\t使用PHP开发新闻发布系统
\\tPHP开发动态网站
本书由广东轻工职业技术学院副教授、高级工程师王跃胜进行总体策划和设计,其中项目1由蔡文锐老师编写,项目3、4、5、8、10由黄龙泉老师编写,项目9由曾凡涛老师编写,项目2、6由王跃胜编写。在本书编写过程中,编者得到学院领导、企业实习单位、同事、朋友的帮助和支持,在此表示衷心的感谢!
本教材提供教学课件,并提供全部调试通过的源代码。相关资源请登录华信教育资源网(www.hxedu.com.cn)免费下载。
由于编者水平有限,书中难免有疏漏和错误之处,恳请广大读者批评指正。
编 者
2014年5月