视频教学版 MySQL 5.7从零开始学

MySQL 5.7从零开始学(视频教学版)出版信息MySQL 5.7从零开始学(视频教学版)作者:王英英 李小威 定价:79元印次:1-1ISBN:9787302498124出版日期:2018.04.01印刷日期:2018.03.09内容简介本书内容主要包括MySQL 5.7的安装与配置、资料库的创建、数据表的创建、数据类型和运算符、MySQL函式、查询数据、数据表的操作(插入、更新与删除数据)、索引、存储过程和函式、视图、触发器、用户管理、数据备份与还原、日誌以及性能最佳化,重点介绍MySQL安装与配置、数据类型和运算符以及数据表的操作 。本书注重实战操作,帮助读者循序渐进地掌握MySQL中的各项技术 。本书共有357个实例和14个综合案例,还有大量的经典习题 。下载资源中包含近20小时培训班形式的视频教学录像,详细讲解书中每一个知识点和每一个资料库操作的方法和技巧;同时还提供了本书所有例子的原始码,读者可以直接查看和调用 。本书适合MySQL资料库初学者、MySQL资料库开发人员和MySQL资料库管理人员,同时也可作为高等院校和培训学校相关专业师生的教学参考用书 。作者王英英,从事多年网站开发和APP程式开发,精通各种程式语言、网路编程和资料库开发知识,具有丰富的实战开发经验 。对Web前端、Java、Python有深入研究,并出版过多本相关畅销书,颇受广大读者认可 。目 录第1章 认识MySQL 5.7 11.1 资料库基础 11.1.1 什幺是资料库 11.1.2 表 21.1.3 数据类型 21.1.4 主键 21.2 资料库技术构成 31.2.1 资料库系统 31.2.2 SQL语言 41.2.3 资料库访问接口 51.3 了解MySQL资料库 51.3.1 客户机-伺服器软体 61.3.2 MySQL的版本 61.3.3 MySQL的优势 71.4 MySQL 5.7的新功能 81.5 学习MySQL的诀窍 8第2章 MySQL的安装与配置 102.1 在Windows平台下安装与配置MySQL 5.7 102.1.1 安装MySQL 5.7 102.1.2 配置MySQL 5.7 152.2 启动服务并登录MySQL资料库 192.2.1 启动MySQL服务 202.2.2 登录MySQL资料库 212.2.3 配置Path变数 242.3 MySQL常用图形管理工具 262.4 在Linux平台下安装与配置MySQL 5.7 272.4.1 Linux作业系统下的MySQL版本介绍 272.4.2 安装和配置MySQL的RPM包 292.4.3 安装和配置MySQL的源码包 332.5 疑难解惑 342.6 上机练练手 34第3章 资料库的基本操作 353.1 创建资料库 353.2删除资料库 373.3理解资料库存储引擎 373.3.1MySQL存储引擎简介 373.3.2InnoDB存储引擎 393.3.3MyISAM存储引擎 403.3.4MEMORY存储引擎 413.3.5存储引擎的选择 413.4实战演练——资料库的创建和删除 423.5疑难解惑 443.6上机练练手 44第4章数据表的基本操作 454.1创建数据表 454.1.1创建表的语法形式 454.1.2使用主键约束 474.1.3使用外键约束 484.1.4使用非空约束 494.1.5使用唯一性约束 504.1.6使用默认约束 504.1.7设定表的属性值自动增加 514.2查看数据表结构 524.2.1查看錶基本结构语句DESCRIBE 524.2.2查看錶详细结构语句SHOWCREATETABLE 534.3修改数据表 544.3.1修改表名 554.3.2修改栏位的数据类型 554.3.3修改栏位名 564.3.4添加栏位 574.3.5删除栏位 604.3.6修改栏位的排列位置 614.3.7更改表的存储引擎 624.3.8删除表的外键约束 634.4删除数据表 644.4.1删除没有被关联的表 654.4.2删除被其他表关联的主表 654.5实战演练——数据表的基本操作 674.6疑难解惑 754.7上机练练手 76第5章数据类型和运算符 775.1MySQL数据类型介绍 775.1.1整数类型 775.1.2浮点数类型和定点数类型 795.1.3日期与时间类型 815.1.4文本字元串类型 935.1.5二进制字元串类型 985.2如何选择数据类型 1015.3常见运算符介绍 1025.3.1运算符概述 1035.3.2算术运算符 1035.3.3比较运算符 1055.3.4逻辑运算符 1135.3.5位运算符 1165.3.6运算符的优先权 1195.4实战演练——运算符的使用 1195.5疑难解惑 1225.6上机练练手 123第6章MySQL函式 1246.1MySQL函式简介 1246.2数学函式 1256.2.1绝对值函式ABS(x)和返回圆周率的函式PI() 1256.2.2平方根函式SQRT(x)和求余函式MOD(x,y) 1256.2.3获取整数的函式CEIL(x)、CEILING(x)和FLOOR(x) 1266.2.4获取随机数的函式RAND()和RAND(x) 1276.2.5函式ROUND(x)、ROUND(x,y)和TRUNCATE(x,y) 127 6.2.6符号函式SIGN(x) 1296.2.7幂运算函式POW(x,y)、POWER(x,y)和EXP(x) 1296.2.8对数运算函式LOG(x)和LOG10(x) 1306.2.9角度与弧度相互转换的函式RADIANS(x)和DEGREES(x) 1306.2.10正弦函式SIN(x)和反正弦函式ASIN(x) 1316.2.11余弦函式COS(x)和反余弦函式ACOS(x) 1326.2.12正切函式、反正切函式和余切函式 1326.3字元串函式 1336.3.1计算字元串字元数和字元串长度的函式 1336.3.2合併字元串函式CONCAT(s1,s2,…)、CONCAT_WS(x,s1,s2,…) 1346.3.3替换字元串的函式INSERT(s1,x,len,s2) 1356.3.4字母大小写转换函式 1366.3.5获取指定长度的字元串的函式LEFT(s,n)和RIGHT(s,n) 1366.3.6填充字元串的函式LPAD(s1,len,s2)和RPAD(s1,len,s2) 1376.3.7删除空格的函式LTRIM(s)、RTRIM(s)和TRIM(s) 1386.3.8删除指定字元串的函式TRIM(s1FROMs) 1396.3.9重複生成字元串的函式REPEAT(s,n) 1396.3.10空格函式SPACE(n)和替换函式REPLACE(s,s1,s2) 1406.3.11比较字元串大小的函式STRCMP(s1,s2) 1406.3.12获取子串的函式SUBSTRING(s,n,len)和MID(s,n,len) 1416.3.13匹配子串开始位置的函式 1426.3.14字元串逆序的函式REVERSE(s) 1426.3.15返回指定位置的字元串的函式 1426.3.16返回指定字元串位置的函式FIELD(s,s1,s2,…) 1436.3.17返回子串位置的函式FIND_IN_SET(s1,s2) 1436.3.18选取字元串的函式MAKE_SET(x,s1,s2,…) 1446.4日期和时间函式 1446.4.1获取当前日期的函式和获取当前时间的函式 1446.4.2获取当前日期和时间的函式 1456.4.3UNIX时间戳函式 1466.4.4返回UTC日期的函式和返回UTC时间的函式 1466.4.5获取月份的函式MONTH(date)和MONTHNAME(date) 1476.4.6获取星期的函式DAYNAME(d)、DAYOFWEEK(d)和WEEKDAY(d) 1486.4.7获取星期数的函式WEEK(d)和WEEKOFYEAR(d) 1496.4.8获取天数的函式DAYOFYEAR(d)和DAYOFMONTH(d) 150 6.4.9获取年份、季度、小时、分钟和秒钟的函式 1506.4.10获取日期的指定值的函式EXTRACT(typeFROMdate) 1526.4.11时间和秒钟转换的函式 1526.4.12计算日期和时间的函式 1536.4.13将日期和时间格式化的函式 1566.5条件判断函式 1596.5.1IF(expr,v1,v2)函式 1596.5.2IFNULL(v1,v2)函式 1596.5.3CASE函式 1606.6系统信息函式 1616.6.1获取MySQL版本号、连线数和资料库名的函式 1616.6.2获取用户名的函式 1636.6.3获取字元串的字元集和排序方式的函式 1636.6.4获取最后一个自动生成的ID值的函式 1646.7加密函式 1666.7.1加密函式PASSWORD(str) 1666.7.2加密函式MD5(str) 1676.7.3加密函式ENCODE(str,pswd_str) 1676.7.4解密函式DECODE(crypt_str,pswd_str) 1676.8其他函式 1686.8.1格式化函式FORMAT(x,n) 1686.8.2不同进制的数字进行转换的函式 1686.8.3IP位址与数字相互转换的函式 1696.8.4加锁函式和解锁函式 1706.8.5重複执行指定操作的函式 1716.8.6改变字元集的函式 1716.8.7改变数据类型的函式 1726.9实战演练——MySQL函式的使用 1726.10疑难解惑 1766.11上机练练手 176第7章查询数据 1787.1基本查询语句 1787.2单表查询 1807.2.1查询所有栏位 1817.2.2查询指定栏位 1827.2.3查询指定记录 1847.2.4带IN关键字的查询 1857.2.5带BETWEENAND的範围查询 1877.2.6带LIKE的字元匹配查询 1887.2.7查询空值 1907.2.8带AND的多条件查询 1917.2.9带OR的多条件查询 1927.2.10查询结果不重複 1937.2.11对查询结果排序 1957.2.12分组查询 1987.2.13使用LIMIT限制查询结果的数量 2037.3使用集合函式查询 2057.3.1COUNT()函式 2057.3.2SUM()函式 2067.3.3AVG()函式 2077.3.4MAX()函式 2087.3.5MIN()函式 2097.4连线查询 2107.4.1内连线查询 2117.4.2外连线查询 214 7.4.3複合条件连线查询 2167.5子查询 2177.5.1带ANY、SOME关键字的子查询 2177.5.2带ALL关键字的子查询 2187.5.3带EXISTS关键字的子查询 2187.5.4带IN关键字的子查询 2207.5.5带比较运算符的子查询 2227.6合併查询结果 2237.7为表和栏位取别名 2267.7.1为表取别名 2267.7.2为栏位取别名 2277.8使用正则表达式查询 2297.8.1查询以特定字元或字元串开头的记录 2307.8.2查询以特定字元或字元串结尾的记录 2317.8.3用符号"."来替代字元串中的任意一个字元 2317.8.4使用"*"和"+"来匹配多个字元 2327.8.5匹配指定字元串 2327.8.6匹配指定字元中的任意一个 2337.8.7匹配指定字元以外的字元 2347.8.8使用{n,}或者{n,m}来指定字元串连续出现的次数 2357.9实战演练——数据表查询操作 2367.10疑难解惑 2447.11上机练练手 245第8章插入、更新与删除数据 2468.1插入数据 2468.1.1为表的所有栏位插入数据 2468.1.2为表的指定栏位插入数据 2488.1.3同时插入多条记录 2508.1.4将查询结果插入到表中 2528.2更新数据 2538.3删除数据 2558.4实战演练——记录的插入、更新和删除 2578.5疑难解惑 2628.6上机练练手 263第9章索引 2649.1索引简介 2649.1.1索引的含义和特点 2649.1.2索引的分类 2659.1.3索引的设计原则 2669.2创建索引 2669.2.1创建表的时候创建索引 2669.2.2在已经存在的表上创建索引 2729.3删除索引 2799.4实战演练——创建索引 2819.5疑难解惑 2849.6上机练练手 284第10章存储过程和函式 28510.1创建存储过程和函式 28510.1.1创建存储过程 28610.1.2创建存储函式 28810.1.3变数的使用 28910.1.4定义条件和处理程式 29010.1.5游标的使用 29310.1.6流程控制的使用 29410.2调用存储过程和函式 29910.2.1调用存储过程 29910.2.2调用存储函式 30010.3查看存储过程和函式 30010.3.1使用SHOWSTATUS语句查看存储过程和函式的状态 301 10.3.2使用SHOWCREATE语句查看存储过程和函式的定义 30110.3.3从information_schema.Routines表中查看存储过程和函式的信息 30210.4修改存储过程和函式 30310.5删除存储过程和函式 30510.6实战演练——创建存储过程和函式 30610.7疑难解惑 30910.8上机练练手 310第11章视图 31111.1视图概述 31111.1.1视图的含义 31111.1.2视图的作用 31211.2创建视图 31311.2.1创建视图的语法形式 31311.2.2在单表上创建视图 31411.2.3在多表上创建视图 31511.3查看视图 31611.3.1使用DESCRIBE语句查看视图基本信息 31611.3.2使用SHOWTABLESTATUS语句查看视图基本信息 31611.3.3使用SHOWCREATEVIEW语句查看视图详细信息 31811.3.4在views表中查看视图详细信息 31811.4修改视图 32011.4.1使用CREATEORREPLACEVIEW语句修改视图 32011.4.2使用ALTER语句修改视图 32111.5更新视图 32211.6删除视图 32411.7实战演练——视图套用 32511.8疑难解惑 33311.9上机练练手 334第12章MySQL触发器 33512.1创建触发器 33512.1.1创建只有一个执行语句的触发器 33612.1.2创建有多个执行语句的触发器 33712.2查看触发器 33912.2.1SHOWTRIGGERS语句查看触发器信息 33912.2.2在triggers表中查看触发器信息 34112.3使用触发器 34312.4删除触发器 34312.5实战演练——触发器的使用 34412.6疑难解惑 34612.7上机练练手 346第13章MySQL用户管理 34713.1许可权表 34713.1.1user表 34713.1.2db表和host表 35013.1.3tables_priv表和columns_priv表 35113.1.4procs_priv表 35213.2账户管理 35313.2.1登录和退出MySQL伺服器 35313.2.2新建普通用户 35513.2.3删除普通用户 35913.2.4root用户修改自己的密码 36013.2.5root用户修改普通用户密码 36113.2.6普通用户修改密码 36313.2.7root用户密码丢失的解决办法 36313.3许可权管理 365 13.3.1MySQL的各种许可权 36513.3.2授权 36713.3.3收回许可权 36913.3.4查看许可权 37013.4访问控制 37113.4.1连线核实阶段 37113.4.2请求核实阶段 37113.5实战演练——综合管理用户许可权 37213.6疑难解惑 37613.7上机练练手 377第14章数据备份与恢复 37814.1数据备份 37814.1.1使用mysqldump命令备份 37814.1.2直接複製整个资料库目录 38514.1.3使用mysqlhotcopy工具快速备份 38514.2数据恢复 38614.2.1使用MySQL命令恢复 38614.2.2直接複製到资料库目录 38714.2.3mysqlhotcopy快速恢复 38714.3资料库迁移 38814.3.1相同版本的MySQL资料库之间的迁移 38814.3.2不同版本的MySQL资料库之间的迁移 38814.3.3不同资料库之间的迁移 38914.4表的导出和导入 38914.4.1使用SELECT…INTOOUTFILE导出文本档案 38914.4.2使用mysqldump命令导出文本档案 39214.4.3使用MySQL命令导出文本档案 39514.4.4使用LOADDATAINFILE方式导入文本档案 39814.4.5使用mysqlimport命令导入文本档案 40014.5实战演练——数据的备份与恢复 40214.6疑难解惑 40714.7上机练练手 408第15章MySQL日誌 40915.1日誌简介 40915.2二进制日誌 41015.2.1启动和设定二进制日誌 41015.2.2查看二进制日誌 41115.2.3删除二进制日誌 41315.2.4使用二进制日誌恢複数据库 41515.2.5暂时停止二进制日誌功能 41615.3错误日誌 41615.3.1启动和设定错误日誌 41615.3.2查看错误日誌 41715.3.3删除错误日誌 41815.4通用查询日誌 41815.4.1启动和设定通用查询日誌 41815.4.2查看通用查询日誌 41815.4.3删除通用查询日誌 41915.5慢查询日誌 42015.5.1启动和设定慢查询日誌 42015.5.2查看慢查询日誌 42015.5.3删除慢查询日誌 42115.6实战演练——MySQL日誌的综合管理 42115.7疑难解惑 42715.8上机练练手 428第16章性能最佳化 429 16.1最佳化简介 42916.2最佳化查询 43016.2.1分析查询语句 43016.2.2索引对查询速度的影响 43316.2.3使用索引查询 43416.2.4最佳化子查询 43716.3最佳化资料库结构 43816.3.1将栏位很多的表分解成多个表 43816.3.2增加中间表 43916.3.3增加冗余栏位 44116.3.4最佳化插入记录的速度 44116.3.5分析表、检查表和最佳化表 44316.4最佳化MySQL伺服器 44516.4.1最佳化伺服器硬体 44516.4.2最佳化MySQL的参数 44616.5实战演练——全面最佳化MySQL伺服器 44716.6疑难解惑 44916.7上机练练手 450第17章设计新闻发布系统的资料库 45117.1系统概述 45117.2系统功能 45217.3资料库设计和实现 45317.3.1设计表 45317.3.2设计索引 45717.3.3设计视图 45817.3.4设计触发器 45917.4案例总结 460