关于本书的内容有任何问题,请联系 刘博
第 1章 数据库设计概述 1 1.1 数据库概述 2 1.1.1 数据库与数据库管理系统 2 1.1.2 数据模型 3 1.1.3 结构化查询语言SQL 3 1.2 数据库的体系结构 3 1.2.1 数据库三级模式结构 3 1.2.2 三级模式之间的映射 4 1.3 E-R图 4 1.3.1 实体和属性 4 实例:设计图书馆管理系统的图书实体图 1.3.2 关系 5 1.3.3 E-R图的设计原则 5 实例:设计图书馆管理系统的E-R图 1.4 数据库设计 6 1.4.1 为实体建立数据表 6 实例:根据图书实体建立图书数据表 1.4.2 为表建立主键或外键 7 1.4.3 为字段选择合适的数据类型 7 1.4.4 定义约束条件 8 小结 8 习题 8 第 2章 MySQL概述 9 2.1 为什么选择MySQL数据库 10 2.1.1 什么是MySQL数据库 10 2.1.2 MySQL的优势 10 2.1.3 MySQL的发展史 10 2.2 MySQL特性 10 2.3 MySQL服务器的安装与配置 11 2.3.1 下载MySQL 11 2.3.2 MySQL环境的安装 13 2.3.3 启动、连接、断开和停止MySQL服务器 20 小结 23 上机指导 24 习题 25 第3章 MySQL数据库管理 26 3.1 创建数据库 27 3.1.1 通过CREATE DATABASE语句创建数据库 27 实例:创建图书馆管理系统数据库 3.1.2 通过CREATE SCHEMA语句创建数据库 27 实例:通过CREATE SCHEMA语句创建名称为db_library1的数据库 3.1.3 创建指定字符集的数据库 28 实例:创建使用GBK字符集的数据库 3.1.4 创建数据库前判断是否存在同名数据库 28 实例:创建图书馆管理系统数据库前判断是否存在同名数据库 3.2 查看数据库 29 实例:查看服务器中的所有数据库 3.3 选择数据库 29 实例:设置默认的数据库 3.4 修改数据库 30 实例:修改数据库使用的字符集 3.5 删除数据库 31 实例:删除3.1.4节创建的数据库 3.6 数据库存储引擎的应用 31 3.6.1 查询MySQL中支持的存储引擎 31 实例:查询默认的存储引擎 3.6.2 InnoDB存储引擎 33 3.6.3 MyISAM存储引擎 34 3.6.4 MEMORY存储引擎 34 3.6.5 如何选择存储引擎 35 小结 36 上机指导 36 习题 37 第4章 MySQL表结构管理 38 4.1 MySQL数据类型 39 4.1.1 数字类型 39 4.1.2 字符串类型 40 4.1.3 日期和时间数据类型 41 4.2 创建表 41 实例:创建图书馆管理系统的图书信息表 4.2.1 设置默认的存储引擎 43 实例:为图书类型表设置使用MyISAM存储引擎 4.2.2 设置自增类型字段 44 实例:为图书类型表设置自动编号 4.2.3 设置字符集 45 4.2.4 复制表结构 45 实例:为图书信息表建立副本 4.3 修改表结构 48 4.3.1 修改字段 48 实例:在图书信息表的副本中添加一个新的字段 4.3.2 修改约束条件 49 4.3.3 修改表的其他选项 50 4.3.4 修改表名 50 实例:修改图书信息表的副本为tb_books 4.4 删除表 51 实例:删除图书信息表的副本 4.5 设置索引 51 4.5.1 索引概述 51 4.5.2 创建索引 52 实例:创建考生成绩表并设置索引 实例:为图书信息表的书名字段设置索引 4.5.3 删除索引 55 实例:删除图书信息表的书名字段的索引 4.6 定义约束 56 4.6.1 定义主键约束 56 实例:创建图书馆管理系统的管理员信息表并将id字段设置为主键约束 实例:创建学生信息表并将学号和班级号设置为主键约束 4.6.2 定义候选键约束 57 实例:将图书信息表的书名字段设置为候选键约束 4.6.3 定义非空约束 58 实例:创建图书馆管理系统的管理员信息表,并为其设置非空约束 4.6.4 定义CHECK约束 58 实例:创建学生信息表,限制其age字段的值只能是7~18(不包括18)的数 实例:创建图书信息表,限制其typeid字段的值只能是类别表的id字段的值 小结 60 上机指导 60 习题 61 第5章 表记录的更新操作 62 5.1 插入表记录 63 5.1.1 使用INSERT…VALUES语句插入新记录 63 实例:向图书馆管理系统的管理员信息表中插入一条新记录 实例:向管理员信息表中插入记录的一部分 5.1.2 插入多条记录 65 实例:向管理员信息表中批量插入3条新记录 5.1.3 使用INSERT…SELECT语句插入结果集 66 实例:从图书馆管理系统的借阅表中获取部分借阅信息插入到归还表中 5.1.4 使用REPLACE语句插入新记录 68 5.2 修改表记录 69 实例:将图书馆管理系统的借阅表中的是否归还字段值设置为1 5.3 删除表记录 70 5.3.1 使用DELETE语句删除表记录 70 实例:将图书馆管理系统的管理员信息表中的名称为admin的管理员删除 5.3.2 使用TRUNCATE语句清空表记录 71 实例:清空图书馆管理系统的管理员信息表 小结 71 上机指导 72 习题 72 第6章 表记录的检索 73 6.1 基本查询语句 74 6.2 单表查询 75 6.2.1 查询所有字段 76 实例:查询图书馆管理系统的图书信息表的全部数据 6.2.2 查询指定字段 76 实例:从图书馆管理系统的图书信息表中查询图书的名称和作者 6.2.3 查询指定数据 76 实例:从图书馆管理系统的管理表中查询名称为mr的管理员 6.2.4 带IN关键字的查询 77 实例:从图书馆管理系统的图书表中查询位于左A-1或右A-1的图书信息 6.2.5 带BETWEEN AND的范围查询 78 实例:从图书馆管理系统的借阅表中查询指定时间段内的借阅信息 6.2.6 带LIKE的字符匹配查询 78 实例:对图书馆管理系统的图书信息进行模糊查询 6.2.7 用IS NULL关键字查询空值 79 实例:查询图书馆管理系统的读者类型表中name字段为空的记录 6.2.8 带AND的多条件查询 79 实例:判断输入的管理员账号和密码是否存在 6.2.9 带OR的多条件查询 80 实例:查询图书馆管理系统的管理员表中名称为mr或者mingrisoft的记录 6.2.10 用DISTINCT关键字去除结果中的重复行 80 实例:从图书馆管理系统的读者信息表中获取职业 6.2.11 用ORDER BY关键字对查询结果排序 81 实例:对图书借阅信息进行排序 6.2.12 用GROUP BY关键字分组查询 81 实例:分组统计每本图书的借阅次数(3例) 6.2.13 用LIMIT限制查询结果的数量 83 实例:查询**后被借阅的3本图书 实例:查询从编号2开始的3条记录 6.3 聚合函数查询 83 6.3.1 COUNT()函数 83 实例:统计图书馆管理系统中的读者人数 6.3.2 SUM()函数 84 实例:统计商品的销售金额 6.3.3 AVG()函数 84 实例:计算学生的平均成绩 6.3.4 MAX()函数 85 实例:计算学生表中的**高成绩 6.3.5 MIN()函数 86 实例:计算学生表中的**低成绩 6.4 连接查询 86 6.4.1 内连接查询 86 实例:使用内连接查询出图书的借阅信息 6.4.2 外连接查询 88 实例:使用左外连接获取图书的**多借阅天数 实例:使用右外连接获取图书的**多借阅天数 6.4.3 复合条件连接查询 89 实例:查询出未归还的图书借阅信息 6.5 子查询 90 6.5.1 带IN关键字的子查询 90 实例:查询被借阅过的图书信息 6.5.2 带比较运算符的子查询 91 实例:查询考试成绩为的学生信息 6.5.3 带EXISTS关键字的子查询 92 实例:查询已经被借阅的图书信息 6.5.4 带ANY关键字的子查询 93 实例:查询比一年三班**低分高的全部学生信息 6.5.5 带ALL关键字的子查询 94 实例:查询比一年三班**高分高的全部学生信息 6.6 合并查询结果 95 实例:将图书信息表1和图书信息表2合并(2例) 6.7 定义表和字段的别名 96 6.7.1 为表取别名 96 实例:使用左连接查询出图书的完整信息,并为表指定别名 6.7.2 为字段取别名 96 实例:统计每本图书的借阅次数,并取别名为degree 6.8 使用正则表达式查询 97 6.8.1 匹配指定字符中的任意一个 98 实例:在图书馆管理系统中查询包括字母k、r或s的管理员信息 6.8.2 使用“*”和“+”来匹配多个字符 99 实例:在图书馆管理系统中查询E-mail地址不正确的读者信息 小结 100 上机指导 100 习题 101 第7章 视图 102 7.1 视图概述 103 7.1.1 视图的概念 103 7.1.2 视图的作用 103 7.2 创建视图 104 7.2.1 查看创建视图的权限 104 实例:查看用户是否具有创建视图的权限 7.2.2 创建视图 104 实例:创建保存完整图书信息的视图 7.2.3 创建视图的注意事项 106 7.3 视图操作 106 7.3.1 查看视图 106 实例:查看图书视图的结构 实例:查看图书视图的详细定义 7.3.2 修改视图 108 实例:修改图书视图的结构 实例:使用ALTER语句修改图书视图的结构 7.3.3 更新视图 110 实例:更新图书视图中的数据 7.3.4 删除视图 112 实例:删除已经创建的图书视图 小结 113 上机指导 113 习题 114 第8章 触发器 115 8.1 MySQL触发器 116 8.1.1 创建MySQL触发器 116 实例:保存图书信息时,自动向日志表添加一条数据 8.1.2 创建具有多个执行语句的触发器 117 实例:删除图书信息时,分别向日志表和临时表中各添加一条数据 8.2 查看触发器 119 8.2.1 SHOW TRIGGERS 119 8.2.2 查看triggers表中的触发器信息 120 8.3 使用触发器 120 8.3.1 触发器的执行顺序 121 实例:触发器与表操作的执行顺序 8.3.2 使用触发器维护冗余数据 122 实例:使用触发器维护库存数量 8.4 删除触发器 123 实例:删除指定名称的触发器 小结 124 上机指导 124 习题 125 第9章 存储过程与存储函数 126 9.1 创建存储过程与存储函数 127 9.1.1 创建存储过程 127 实例:创建一个统计指定图书借阅次数的存储过程 9.1.2 创建存储函数 129 实例:创建一个统计图书借阅次数的存储函数 9.1.3 变量的应用 130 实例:演示局部变量的有效范围 实例:会话(全局)变量的举例 9.1.4 光标的运用 133 9.2 存储过程和存储函数的调用 134 9.2.1 调用存储过程 134 实例:调用统计图书借阅次数的存储过程 9.2.2 调用存储函数 135 实例:调用统计图书借阅次数的存储函数 9.3 查看存储过程和函数 136 9.3.1 SHOW STATUS语句 136 9.3.2 SHOW CREATE语句 136 实例:查询指定名称的存储过程 9.4 修改存储过程和函数 137 实例:修改存储过程 9.5 删除存储过程和函数 138 实例:删除统计图书借阅次数的存储过程 实例:删除统计图书借阅次数的存储函数 小结 138 上机指导 139 习题 140 第 10章 备份与恢复 141 10.1 数据备份 142 10.1.1 使用mysqldump命令备份 142 实例:备份图书馆管理系统的数据库 实例:备份db_library和db_library_gbk数据库 实例:备份所有数据库 10.1.2 直接复制整个数据库目录 145 10.1.3 使用mysqlhotcopy工具快速备份 145 10.2 数据恢复 146 10.2.1 使用mysql命令还原 146 实例:还原已经备份的图书馆管理系统的数据库 10.2.2 直接复制到数据库目录 147 10.3 数据库迁移 147 10.3.1 MySQL数据库之间的迁移 147 10.3.2 不同数据库之间的迁移 148 10.4 表的导出和导入 148 10.4.1 用SELECT…INTO OUTFILE导出文本文件 148 实例:使用SELECT…INTO OUTFILE导出图书馆管理系统的图书表的记录 10.4.2 用mysqldump命令导出文本文件 150 实例:使用mysqldump命令导出图书馆管理系统的图书表的记录 10.4.3 用mysql命令导出文本文件 152 实例:使用mysql命令导出图书馆管理系统的图书表的记录 小结 153 上机指导 153 习题 155 第 11章 MySQL性能优化 156 11.1 优化概述 157 11.1.1 分析MySQL数据库的性能 157 11.1.2 通过profile工具分析语句消耗的性能 157 11.2 优化查询 158 11.2.1 分析查询语句 159 实例:使用EXPLAIN语句分析一个查询语句 11.2.2 索引对查询速度的影响 160 实例:举例分析索引对查询速度的影响 11.2.3 使用索引查询 161 实例:举例分析应用LIKE关键字优化索引查询 实例:通过EXPLAIN分析使用OR关键字的查询 11.3 优化数据库结构 162 11.3.1 将字段很多的表分解成多个表 163 实例:将学生表分解为学生表和备注表 11.3.2 增加中间表 163 实例:创建包含学生表常用信息表中间表 11.3.3 优化插入记录的速度 164 11.3.4 分析表、检查表和优化表 165 11.4 优化多表查询 166 实例:演示优化多表查询 11.5 优化表设计 167 小结 168 上机指导 168 习题 169 第 12章 事务与锁机制 170 12.1 事务机制 171 12.1.1 事务的概念 171 12.1.2 事务机制的必要性 171 实例:模拟银行转账验证事务的必要性 12.1.3 关闭MySQL自动提交 173 12.1.4 事务回滚 174 实例:演示事务回滚 12.1.5 事务提交 175 12.1.6 MySQL中的事务 176 实例:实现出错时回滚否则提交事务 12.1.7 回退点 178 实例:应用回退点实现部分撤销 12.2 锁机制 179 12.2.1 MySQL锁机制的基本知识 180 12.2.2 MyISAM表的表级锁 181 实例:以读方式锁定用户数据表 实例:以写方式锁定用户表 12.2.3 InnoDB表的行级锁 184 实例:通过事务实现延长行级锁的生命周期 12.2.4 死锁的概念与避免 186 12.3 事务的隔离级别 186 12.3.1 事务的隔离级别与并发问题 186 12.3.2 设置事务的隔离级别 187 小结 187 上机指导 188 习题 190 第 13章 综合开发案例——图书馆管理系统 191 13.1 开发背景 192 13.2 系统分析 192 13.2.1 需求分析 192 13.2.2 可行性研究 192 13.3 JSP预备知识 193 13.3.1 JSP概述 193 13.3.2 JSP的开发及运行环境 194 13.3.3 JSP页面的基本构成 195 13.4 系统设计 195 13.4.1 系统目标 195 13.4.2 系统功能结构 196 13.4.3 系统流程图 196 13.4.4 开发环境 197 13.4.5 文件夹组织结构 197 13.5 系统预览 197 13.6 数据库设计 199 13.6.1 实体图设计 199 13.6.2 E-R图设计 201 13.6.3 数据库逻辑结构设计 201 13.7 公共模块设计 204 13.7.1 数据库连接及操作类的编写 205 13.7.2 字符串处理类的编写 207 13.7.3 配置解决中文乱码的过滤器 207 13.8 主界面设计 208 13.8.1 主界面概述 208 13.8.2 主界面的实现过程 209 13.9 管理员模块设计 210 13.9.1 管理员模块概述 210 13.9.2 编写管理员模块的实体类和Servlet控制类 210 13.9.3 系统登录的实现过程 212 13.9.4 查看管理员的实现过程 215 13.9.5 添加管理员的实现过程 218 13.9.6 设置管理员权限的实现过程 221 13.9.7 删除管理员的实现过程 224 13.10 图书借还模块设计 225 13.10.1 图书借还模块概述 225 13.10.2 编写图书借还模块的实体类和Servlet控制类 226 13.10.3 图书借阅的实现过程 227 13.10.4 图书续借的实现过程 231 13.10.5 图书归还的实现过程 234 13.10.6 图书借阅查询的实现过程 235 小结 239 附录 实验 240 实验1:安装MySQL数据库 241 实验2:创建数据库并指定使用的字符集 241 实验3:创建和修改数据表 243 实验4:使用SQL语句插入和更新记录 244 实验5:为表创建索引 246 实验6:创建并使用约束 247 实验7:模糊查询数据 249 实验8:查询和汇总数据库的数据 250 实验9:创建视图 251 实验10:创建触发器 252 实验11:创建和使用存储过程 254 实验12:备份和恢复数据库 255
需要自测题库的答案,麻烦发给我一下,邮箱lili2003141107@163.com
自测题库有参考答案吗?请发送到我的邮箱 619043137@qq.com ,谢谢!
你好!能发自测题库答案到2467251984@qq.com吗?
您好,这一本书籍什么时候有货呢
您好,此书预计下周有货。
需要自测题库的答案,求大佬发我一下,邮箱670086460@qq.com
本书为Java基础入门教材,适合初学者使用。全书共13章,第1~2章主要讲解Java技术的一些基础知识,内容包...
本书以PyCharm为主要开发工具,采用理论与实训案例相结合的编写方式,系统地讲解Python的相关知识。本书...
本书根据高等院校应用技术型人才培养的目标编写,适合案例学习和模块化教学相结合的教学方式。本书以真实企业开发案例...
Java是互联网时代深受开发者欢迎的编程语言,广泛应用于开发移动应用、Web应用、分布式应用、游戏、系统服务和...
本书是一本系统、实用、易学的Python入门教材。全书围绕Python3的核心知识点,按照Python编程的学...
需要自测题库的答案,麻烦发给我一下,邮箱lili2003141107@163.com
自测题库有参考答案吗?请发送到我的邮箱 619043137@qq.com ,谢谢!
你好!能发自测题库答案到2467251984@qq.com吗?
您好,这一本书籍什么时候有货呢
需要自测题库的答案,求大佬发我一下,邮箱670086460@qq.com