×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
图文详情
  • ISBN:9787302457992
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:32开
  • 页数:190
  • 出版时间:2017-09-01
  • 条形码:9787302457992 ; 978-7-302-45799-2

本书特色

《MySQL从入门到精通》从初学者角度出发,通过通俗易懂的语言以及丰富多彩的实例,详细介绍了MySQL开发应该掌握的各方面技术。《MySQL从入门到精通》共分为4篇23章,包括数据库基础,初识MySQL,使用MySQL图形化管理工具,数据库操作,存储引擎及数据类型,操作数据表,MySQL基础,表数据的增、删、改操作,数据查询,常用函数,索引,视图,数据完整性约束,存储过程与存储函数,触发器,事务的应用,事件,备份与恢复,MySQL性能优化,权限管理及安全控制,PHP管理MySQL数据库中的数据,Apache PHP MySQL实现网上社区,Struts 2 Spring Hibernate MySQL实现网络商城等内容。所有知识都结合具体实例进行介绍,涉及的程序代码也给出了详细的注释,可以使读者轻松领会MySQL的精髓,快速提高开发技能。 《MySQL从入门到精通》内容详尽,实例丰富,非常适合作为编程初学者的学习用书,也适合作为开发人员的查阅、参考资料。

内容简介

14.1 创建存储过程和存储函数在数据库系统中,为了保证数据的完整性、一致性,同时也为提高其应用性能,大多数据库常采用存储过程和存储函数技术。MySQL在5.0版本后,也应用了存储过程和存储函数。存储过程和存储函数经常是一组SQL语句的组合,这些语句被当作整体存入MySQL数据库服务器中。用户定义的存储函数不能用于修改全局库状态,但该函数可从查询中被唤醒调用,也可以像存储过程一样通过语句执行。随着MySQL技术的日趋完善,存储过程将和存储函数在以后的项目中得到广泛的应用。14.1.1 创建存储过程在MySQL中,创建存储过程的基本形式如下。
CREATE PROCEDURE sp_name ([proc_parameter[...]])[characteristic ...] routine_body
其中,sp_name参数是存储过程的名称;proc_parameter表示存储过程的参数列表;characteristic参数指定存储过程的特性;routine_body参数是SQL代码的内容,可以用BEGIN...END来标识SQL代码的开始和结束。 一个存储过程包括名字、参数列表,还可以包括很多SQL语句集。下面创建一个存储过程,其代码如下。
delimiter //create procedure proc_name (in parameter integer)begindeclare variable varchar(20);if parameter=1 thenset variable='MySQL';elseset variable='PHP';end if;insert into tb (name) values (variable);end;
MySQL中存储过程的建立以关键字create procedure开始,后面紧跟存储过程的名称和参数。MySQL的存储过程名称不区分大小写,如PROCE1()和proce1()代表同一存储过程名。存储过程名或存储函数名不能与MySQL数据库中的内建函数重名。MySQL存储过程的语句块以begin开始,以end结束。语句体中可以包含变量的声明、控制语句、SQL查询语句等。由于存储过程内部语句要以分号结束,所以在定义存储过程前,应将语句结束标志“;”更改为其他字符,并且应降低该字符在存储过程中出现的机率,更改结束标志可以用关键字delimiter定义,例如:mysql>delimiter //存储过程创建之后,可用如下语句进行删除,参数proc_name指存储过程名。drop procedure proc_name下面创建一个名称为count_of_student的存储过程。首先,创建一个名称为students的MySQL数据库,然后创建一个名为studentinfo的数据表。数据表结构如表14.1所示。表14.1 studentinfo数据表结构字 段 名 类型(长度) 默 认 额 外 说 明sid INT(11) auto_increment 主键自增型sidname VARCHAR(50) 学生姓名age VARCHAR(11) 学生年龄sex VARCHAR(2) M 学生性别tel BIGINT(11) 联系电话

目录

目 录: 第1篇 基 础 知 识 第1章 数据库基础 视频讲解:25分钟 1.1 数据库系统概述 1.1.1 数据库技术的发展 1.1.2 数据库系统的组成 1.2 数据模型 1.2.1 数据模型的概念 1.2.2 常见的数据模型 1.2.3 关系数据库的规范化 1.2.4 关系数据库的设计原则 1.2.5 实体与关系 1.3 数据库的体系结构 1.3.1 数据库三级模式结构 1.3.2 三级模式之间的映射 1.4 小结 1.5 实践与练习 第2章 初识MySQL 视频讲解:12分钟 2.1 了解MySQL 2.1.1 MySQL数据库的概念 2.1.2 MySQL的优势 2.1.3 MySQL的发展史 2.2 MySQL的特性 2.3 MySQL的应用环境 2.4 MySQL服务器的安装和配置 2.4.1 MySQL服务器下载 2.4.2 MySQL服务器安装 2.4.3 启动、连接、断开和停止MySQL服务器 2.4.4 打开MySQL 5.6 Command Line Client 2.5 如何学好MySQL 2.6 小结 2.7 实践与练习 第3章 使用MySQL图形化管理工具 视频讲解:25分钟 3.1 MySQL Workbench图形化管理工具 3.1.1 了解MySQL Workbench 3.1.2 创建数据库和数据表 3.1.3 添加数据 3.1.4 数据的导出和导入 3.2 phpMyAdmin图形化管理工具 3.2.1 配置phpMyAdmin 3.2.2 数据库操作管理 3.2.3 管理数据表 3.2.4 管理数据记录 3.2.5 导出导入数据 3.2.6 phpMyAdmin设置编码格式 3.2.7 phpMyAdmin添加服务器新用户 3.2.8 phpMyAdmin中重置MySQL服务器登录密码 3.3 小结 3.4 实践与练习 第4章 数据库操作 视频讲解:6分钟 4.1 认识数据库 4.1.1 数据库基本概念 4.1.2 数据库常用对象 4.1.3 系统数据库 4.2 创建数据库 4.2.1 通过CREATE DATABASE语句创建基本数据库 4.2.2 通过CREATE SCHEMA语句创建基本数据库 4.2.3 创建指定字符集的数据库 4.2.4 创建数据库前判断是否存在同名数据库 4.3 查看数据库 4.4 选择数据库 4.5 修改数据库 4.6 删除数据库 4.7 小结 4.8 实践与练习 第5章 存储引擎及数据类型 视频讲解:12分钟 5.1 MySQL存储引擎 5.1.1 MySQL存储引擎的概念 5.1.2 查询MySQL中支持的存储引擎 5.1.3 InnoDB存储引擎 5.1.4 MyISAM存储引擎 5.1.5 MEMORY存储引擎 5.1.6 如何选择存储引擎 5.1.7 设置数据表的存储引擎 5.2 MySQL数据类型 5.2.1 数字类型 5.2.2 字符串类型 5.2.3 日期和时间类型 5.3 小结 5.4 实践与练习 第6章 操作数据表 视频讲解:12分钟 6.1 创建数据表 6.2 查看表结构 6.2.1 使用SHOW COLUMNS语句查看 6.2.2 使用DESCRIBE语句查看 6.3 修改表结构 6.3.1 添加新字段及修改字段定义 6.3.2 修改字段名 6.3.3 删除字段 6.3.4 修改表名 6.4 重命名表 6.5 复制表 6.6 删除表 6.7 小结 6.8 实践与练习 第2篇 核 心 技 术第7章 MySQL基础 视频讲解:24分钟 7.1 运算符 7.1.1 算术运算符 7.1.2 比较运算符 7.1.3 逻辑运算符 7.1.4 位运算符 7.1.5 运算符的优先级 7.2 流程控制语句 7.2.1 IF语句 7.2.2 CASE语句 7.2.3 WHILE循环语句 7.2.4 LOOP循环语句 7.2.5 REPEAT循环语句 7.3 小结 7.4 实践与练习 第8章 表数据的增、删、改操作 视频讲解:20分钟 8.1 插入数据 8.1.1 使用INSERT...VALUES语句插入数据 8.1.2 使用INSERT...SET语句插入数据 8.1.3 插入查询结果 8.2 修改数据 8.3 删除数据 8.3.1 通过DELETE语句删除数据 8.3.2 通过TRUNCATE TABLE语句删除数据 8.4 小结 8.5 实践与练习 第9章 数据查询 视频讲解:52分钟 9.1 基本查询语句 9.2 单表查询 9.2.1 查询所有字段 9.2.2 查询指定字段 9.2.3 查询指定数据 9.2.4 带关键字IN的查询 9.2.5 带关键字BETWEEN AND的范围查询 9.2.6 带LIKE的字符匹配查询 9.2.7 用关键字IS NULL查询空值 9.2.8 带关键字AND的多条件查询 9.2.9 带关键字OR的多条件查询 9.2.10 用关键字DISTINCT去除结果中的重复行 9.2.11 用关键字ORDER BY对查询结果排序 9.2.12 用关键字GROUP BY分组查询 9.2.13 用关键字LIMIT限制查询结果的数量 9.3 聚合函数查询 9.3.1 COUNT()函数 9.3.2 SUM()函数 9.3.3 AVG()函数 9.3.4 MAX()函数 9.3.5 MIN()函数 9.4 连接查询 9.4.1 内连接查询 9.4.2 外连接查询 9.4.3 复合条件连接查询 9.5 子查询 9.5.1 带关键字IN的子查询 9.5.2 带比较运算符的子查询 9.5.3 带关键字EXISTS的子查询 9.5.4 带关键字ANY的子查询 9.5.5 带关键字ALL的子查询 9.6 合并查询结果 9.7 定义表和字段的别名 9.7.1 为表取别名 9.7.2 为字段取别名 9.8 使用正则表达式查询 9.8.1 匹配指定字符中的任意一个 9.8.2 使用“*”和“ ”来匹配多个字符 9.8.3 匹配以指定的字符开头和结束的记录 9.9 小结 9.10 实践与练习 第10章 常用函数 视频讲解:36分钟 10.1 MySQL函数 10.2 数学函数 10.2.1 ABS(x)函数 10.2.2 FLOOR(x)函数 10.2.3 RAND()函数 10.2.4 PI()函数 10.2.5 TRUNCATE(x,y)函数 10.2.6 ROUND(x)函数和ROUND(x,y)函数 10.2.7 SQRT(x)函数 10.3 字符串函数 10.3.1 INSERT(s1,x,len,s2)函数 10.3.2 UPPER(s)函数和UCASE(s)函数 10.3.3 LEFT(s,n)函数 10.3.4 RTRIM(s)函数 10.3.5 SUBSTRING(s,n,len)函数 10.3.6 REVERSE(s)函数 10.3.7 FIELD(s,s1,s2,…)函数 10.3.8 LOCATE(s1,s)函数、POSITION(s1 IN s)函数和INSTR(s,s1)函数 10.4 日期和时间函数 10.4.1 CURDATE()函数和CURRENT_DATE()函数 10.4.2 CURTIME()函数和CURRENT_TIME()函数 10.4.3 NOW()函数 10.4.4 DATEDIFF(d1,d2)函数 10.4.5 ADDDATE(d,n)函数 10.4.6 ADDDATE(d,INTERVAL expr type)函数 10.4.7 SUBDATE(d,n)函数 10.5 条件判断函数 10.6 系统信息函数 10.6.1 获取MySQL版本号、连接数和数据库名的函数 10.6.2 获取用户名的函数 10.6.3 获取字符串的字符集和排序方式的函数 10.7 加密函数 10.7.1 加密函数PASSWORD(str) 10.7.2 加密函数MD5(str) 10.8 其他函数 10.8.1 格式化函数FORMAT(x,n) 10.8.2 改变字符集的函数 10.8.3 改变字段数据类型的函数 10.9 小结 10.10 实践与练习 第11章 索引 视频讲解:22分钟 11.1 索引概述 11.1.1 MySQL索引概述 11.1.2 MySQL索引分类 11.2 创建索引 11.2.1 在建立数据表时创建索引 11.2.2 在已建立的数据表中创建索引 11.2.3 修改数据表结构添加索引 11.3 删除索引 11.4 小结 11.5 实践与练习 第12章 视图 视频讲解:22分钟 12.1 视图概述 12.1.1 视图的概念 12.1.2 视图的作用 12.2 创建视图 12.2.1 查看创建视图的权限 12.2.2 创建视图的步骤 12.2.3 创建视图的注意事项 12.3 视图操作 12.3.1 查看视图 12.3.2 修改视图 12.3.3 更新视图 12.3.4 删除视图 12.4 小结 12.5 实践与练习 第3篇 高 级 应 用第13章 数据完整性约束 13.1 定义完整性约束 13.1.1 实体完整性 13.1.2 参照完整性 13.1.3 用户定义完整性 13.2 命名完整性约束 13.3 更新完整性约束 13.3.1 删除完整性约束 13.3.2 修改完整性约束 13.4 小结 13.5 实践与练习 第14章 存储过程与存储函数 视频讲解:22分钟 14.1 创建存储过程和存储函数 14.1.1 创建存储过程 14.1.2 创建存储函数 14.1.3 变量的应用 14.1.4 光标的运用 14.2 存储过程和存储函数的调用 14.2.1 调用存储过程 14.2.2 调用存储函数 14.3 查看存储过程和存储函数 14.3.1 SHOW STATUS语句 14.3.2 SHOW CREATE语句 14.4 修改存储过程和存储函数 14.5 删除存储过程和存储函数 14.6 小结 14.7 实践与练习 第15章 触发器 视频讲解:22分钟 15.1 MySQL触发器 15.1.1 创建MySQL触发器 15.1.2 创建具有多条执行语句的触发器 15.2 查看触发器 15.2.1 SHOW TRIGGERS 15.2.2 查看 triggers表中触发器信息 15.3 使用触发器 15.4 删除触发器 15.5 小结 15.6 实践与练习 第16章 事务的应用 视频讲解:15分钟 16.1 MySQL事务概述 16.1.1 原子性 16.1.2 一致性 16.1.3 孤立性 16.1.4 持久性 16.2 MySQL事务的创建与存在周期 16.2.1 初始化事务 16.2.2 创建事务 16.2.3 应用SELECT语句查询数据是否被正确录入 16.2.4 提交事务 16.2.5 撤销事务(事务回滚) 16.2.6 事务的存在周期 16.3 MySQL事务行为 16.3.1 自动提交 16.3.2 事务的孤立级 16.3.3 修改事务的孤立级 16.4 事务的性能 16.4.1 应用小事务 16.4.2 选择合适的孤立级 16.4.3 死锁的概念与避免 16.5 MySQL伪事务 16.5.1 用表锁定代替事务 16.5.2 应用表锁实现伪事务 16.6 小结 16.7 实践与练习 第17章 事件 17.1 事件概述 17.1.1 查看事件是否开启 17.1.2 开启事件 17.2 创建事件 17.3 修改事件 17.4 删除事件 17.5 小结 17.6 实践与练习 第18章 备份与恢复 视频讲解:3分钟 18.1 数据备份 18.1.1 使用mysqldump命令备份 18.1.2 直接复制整个数据库目录 18.1.3 使用mysqlhotcopy工具快速备份 18.2 数据恢复 18.2.1 使用mysql命令还原 18.2.2 直接复制到数据库目录 18.3 数据库迁移 18.3.1 相同版本的MySQL数据库之间的迁移 18.3.2 不同数据库之间的迁移 18.4 表的导出和导入 18.4.1 用SELECT ...INTO OUTFILE导出文本文件 18.4.2 用mysqldump命令导出文本文件 18.4.3 用mysql命令导出文本文件 18.4.4 用LOAD DATA INFILE命令将文本文件导入到数据表 18.4.5 用mysqlimport命令导入文本文件 18.5 小结 18.6 实践与练习 第19章 MySQL性能优化 视频讲解:10分钟 19.1 优化概述 19.2 优化查询 19.2.1 分析查询语句 19.2.2 索引对查询速度的影响 19.2.3 使用索引查询 19.3 优化数据库结构 19.3.1 将字段很多的表分解成多个表 19.3.2 增加中间表 19.3.3 优化插入记录的速度 19.3.4 分析表、检查表和优化表 19.4 查询高速缓存 19.4.1 检验高速缓存是否开启 19.4.2 使用高速缓存 19.5 优化多表查询 19.6 优化表设计 19.7 小结 19.8 实践与练习 第20章 权限管理及安全控制 视频讲解:10分钟 20.1 安全保护策略概述 20.2 用户和权限管理 20.2.1 使用CREATE USER命令创建用户 20.2.2 使用DROP USER命令删除用户 20.2.3 使用RENAME USER命令重命名用户 20.2.4 GRANT和REVOKE命令 20.3 MySQL数据库安全常见问题 20.3.1 权限更改何时生效 20.3.2 设置账户密码 20.3.3 使密码更安全 20.4 状态文件和日志文件 20.4.1 进程ID文件 20.4.2 日志文件管理 20.5 小结 20.6 实践与练习 第21章 PHP管理MySQL数据库中的数据 视频讲解:22分钟 21.1 PHP语言概述 21.1.1 PHP的概念 21.1.2 PHP的特点 21.1.3 PHP的工作原理 21.1.4 PHP结合数据库应用的优势 21.2 PHP操作MySQL数据库的基本步骤 21.3 使用PHP操作MySQL数据库 21.3.1 应用mysql_connect()函数连接MySQL服务器 21.3.2 应用mysql_select_db()函数选择MySQL数据库 21.3.3 应用mysql_query()函数执行SQL语句 21.3.4 应用mysql_fetch_array()函数将结果集返回到数组中 21.3.5 应用mysql_fetch_object()函数从结果集中获取一行作为对象 21.3.6 应用mysql_fetch_row()函数从结果集中获取一行作为枚举数组 21.3.7 应用mysql_num_rows()函数获取查询结果集中的记录数 21.3.8 应用mysql_free_result()函数释放内存 21.3.9 应用mysql_close()函数关闭连接 21.4 PHP管理MySQL数据库中的数据 21.4.1 向数据库中添加数据 21.4.2 浏览数据库中的数据 21.4.3 编辑数据库数据 21.4.4 删除数据 21.4.5 批量删除数据 21.5 PHP操作MySQL事务 21.6 PHP操作MySQL存储过程 21.7 常见问题与解决方法 21.7.1 MySQL服务器无法连接 21.7.2 用户无权限访问MySQL服务器 21.7.3 提示mysql_connect函数未定义 21.7.4 SQL语句出错或没有返回正确的结果 21.7.5 数据库乱码问题 21.7.6 应用MYSQL_ERROR()语句输出错误信息 21.8 小结 21.9 实践与练习 第4篇 项 目 实 战 第22章 Apache PHP MySQL实现网上社区 22.1 开发背景 22.2 系统分析 22.2.1 需求分析 22.2.2 可行性分析 22.3 系统设计 22.3.1 系统目标 22.3.2 系统功能结构 22.3.3 系统预览 22.3.4 开发环境 22.3.5 文件夹组织结构 22.4 在Linux操作系统下搭建PHP开发环境 22.4.1 Linux下Apache的安装配置 22.4.2 Linux下MySQL的安装配置 22.4.3 Linux下PHP的安装配置 22.5 数据库设计 22.5.1 数据库分析 22.5.2 数据库概念设计 22.5.3 创建数据库及数据表 22.6 公共模块设计 22.6.1 数据库连接文件 22.6.2 将文本中的字符转换为HTML标识符 22.7 前台首页设计 22.7.1 前台首页概述 22.7.2 前台首页技术分析 22.7.3 前台首页的实现过程 22.8 注册模块设计 22.8.1 注册模块概述 22.8.2 注册模块技术分析 22.8.3 注册模块的实现过程 22.9 技术支持模块设计 22.9.1 技术支持模块概述 22.9.2 技术支持模块技术分析 22.9.3 常见问题的实现过程 22.9.4 客户反馈的实现过程 22.10 在线订购模块设计 22.10.1 在线订购模块概述 22.10.2 在线订购模块技术分析 22.10.3 购物车的实现过程 22.10.4 商品订单的实现过程 22.10.5 在线支付的实现 22.11 社区论坛模块设计 22.11.1 社区论坛模块概述 22.11.2 社区论坛模块技术分析 22.11.3 论坛分类的实现过程 22.11.4 论坛帖子浏览的实现过程 22.11.5 论坛帖子发布的实现过程 22.11.6 论坛帖子回复的实现过程 22.12 后台首页设计 22.12.1 后台首页概述 22.12.2 后台首页技术分析 22.12.3 后台首页的实现过程 22.13 编程词典管理模块设计 22.13.1 编程词典管理模块概述 22.13.2 编程词典管理模块技术分析 22.13.3 添加编程词典的实现过程 22.13.4 编辑编程词典的实现过程 22.14 软件升级管理模块设计 22.14.1 软件升级管理模块概述 22.14.2 软件升级管理模块技术分析 22.14.3 软件升级包上传的实现过程 22.14.4 软件升级包删除的实现过程 22.15 在Linux系统下发布网站 22.16 开发技巧与难点分析 22.16.1 管理员权限的设置 22.16.2 帖子置顶的设置 22.16.3 解决提示“客户反馈发表失败!”的问题 22.16.4 解决指定商品没有被删除的问题 22.16.5 解决发帖和回帖时上传的图片不能够正常显示的问题 22.17 小结 第23章 Struts 2 Spring Hibernate MySQL实现网络商城 23.1 开发背景 23.2 系统分析 23.2.1 需求分析 23.2.2 可行性分析 23.3 系统设计 23.3.1 功能结构图 23.3.2 系统流程图 23.3.3 开发环境 23.3.4 文件夹组织结构 23.3.5 系统预览 23.4 数据库设计 23.4.1 数据库概念设计 23.4.2 创建数据库及数据表 23.5 公共模块的设计 23.5.1 泛型工具类 23.5.2 数据持久化类 23.5.3 分页操作 23.5.4 字符串工具类 23.5.5 实体映射 23.6 项目环境搭建 23.6.1 配置Struts 2 23.6.2 配置Hibernate 23.6.3 配置Spring 23.6.4 配置web.xml 23.7 登录注册模块设计 23.7.1 模块概述 23.7.2 注册模块的实现 23.8 前台商品信息查询模块设计 23.8.1 模块概述 23.8.2 前台商品信息查询模块技术分析 23.8.3 商品搜索的实现 23.8.4 前台商品其他查询的实现 23.9 购物车模块设计 23.9.1 模块概述 23.9.2 购物车模块技术分析 23.9.3 购物车基本功能的实现 23.9.4 订单相关功能的实现 23.10 后台商品管理模块设计 23.10.1 模块概述 23.10.2 后台商品管理模块技术分析 23.10.3 商品管理功能的实现 23.10.4 商品类别管理功能的实现 23.11 后台订单管理模块的设计 23.11.1 模块概述 23.11.2 后台订单管理模块技术分析 23.11.3 后台订单查询的实现 23.12 开发技巧与难点分析 23.12.1 解决订单号为空时查询报错 23.12.2 通过Struts 2的拦截器来解决Session超时出现空指针异常的问题 23.13 小结
展开全部

作者简介

作者简介:明日科技,是一家专业从事软件开发、教育培训以及软件开发教育资源整合的高科技公司,其编写的教材既注重选取软件开发中的必需、常用内容,又注重内容的易学、方便以及相关知识的拓展,深受读者喜爱。其编写的图书主要有“软件开发视频大讲堂”“软件开发实战1200例”“软件工程师开发大系”等系列。多次荣获“全行业优秀畅销品种”“中国大学出版社优秀畅销书”等奖项,多个品种长期位居同类图书销售排行榜的前列。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航