4.23文创礼盒,买2个减5元 读书月福利
欢迎光临中图网 请 | 注册
> >
清华数据库技术丛书MYSQL 5.7从入门到实战(视频教学版)

清华数据库技术丛书MYSQL 5.7从入门到实战(视频教学版)

作者:编者:张婷
出版社:清华大学出版社出版时间:2018-06-01
开本: 其他 页数: 590
中 图 价:¥82.6(7.0折) 定价  ¥118.0 登录后可看到会员价
加入购物车 收藏
运费6元,满69元免运费
?快递不能达地区使用邮政小包,运费14元起
云南、广西、海南、新疆、青海、西藏六省,部分地区快递不可达
本类五星书更多>

清华数据库技术丛书MYSQL 5.7从入门到实战(视频教学版) 版权信息

  • ISBN:9787302498506
  • 条形码:9787302498506 ; 978-7-302-49850-6
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 所属分类:>

清华数据库技术丛书MYSQL 5.7从入门到实战(视频教学版) 本书特色

MySQL是世界上*受欢迎的数据库管理系统之一,其高效、稳定、灵活、可扩展性强并且简单易学,这些特性使其在全球获得越来越多开发人员的青睐。与其他数据库相比,MySQL易学易用。通过本书的学习,读者可以轻松掌握*前沿的MySQL技术,为以后高级特性的学习和应用程序的开发夯实数据库应用基础。 《MySQL 5.7从入门到实战》以零基础讲解为宗旨,以MySQL 5.7为蓝本,通过实例讲解MySQL的各项技术及实战技能。 《MySQL 5.7从入门到实战》没有枯燥的理论介绍,而是通过不同难度的案例结合,比较全面地介绍MySQL数据库技术。 《MySQL 5.7从入门到实战》适合任何想学习MySQL的人员,无论你是否从事计算机相关行业,无论你是否接触过MySQL数据库,通过本书的学习都可快速掌握MySQL管理和开发的方法和技巧。

清华数据库技术丛书MYSQL 5.7从入门到实战(视频教学版) 内容简介

MySQL是世界上很受欢迎的数据库管理系统之一,其高效、稳定、灵活、可扩展性强并且简单易学,这些特性使它在优选获得越来越多开发人员的青睐。本书结合不同难度的案例,全面介绍MySQL的各项技术及实战技能。通过本书的学习,读者可以轻松掌握很前沿的MySQL技术,为以后不错特性的学习和应用程序的开发夯实数据库基础。本版分为3篇20章。靠前篇介绍MySQL的基础知识,包括数据库与MySQL概述、MySQL的安装与配置、数据库的操作、数据表的操作、MySQL的数据操作、MySQL的数据类型、MySQL的运算符、MySQL的单表/多表查询、索引、视图、存储过程和函数、触发器、事务和锁等内容;第二篇介绍MySQL的不错特性,如用户安全管理、数据库备份和恢复、日志管理等;第三篇学习MySQL实战开发相关的内容。《MySQL 5.7从入门到实战》是入门MySQL的好书,相信丰富的示例能够成为读者必要的参考资料,是MySQL初学者不错的优选。

清华数据库技术丛书MYSQL 5.7从入门到实战(视频教学版) 目录

目 录 **篇 MySQL基础 第1章 数据库与MySQL 3 1.1 认识数据库 3 1.1.1 我们为什么必须学习数据库 3 1.1.2 数据库技术经历的阶段 4 1.1.3 数据库管理系统提供的功能 5 1.2 当前流行的数据库 6 1.2.1 Oracle 7 1.2.2 SQL Server 7 1.2.3 IBM的DB2 7 1.2.4 MySQL 7 1.2.5 PostgreSQL 7 1.3 数据库管理系统的基本组成 8 1.3.1 数据库 8 1.3.2 数据表 8 1.3.3 数据库开发语言SQL 9 1.4 认识MySQL数据库 10 1.4.1 MySQL与开源文化 10 1.4.2 MySQL发展历史 10 1.4.3 使用MySQL的优势 11 1.4.4 MySQL集群 12 1.5 经典习题与面试题 14 1.6 本章小结 15 第2章 MySQL的安装与配置 16 2.1 Windows平台下安装与配置MySQL 16 2.1.1 安装MySQL 5.7 16 2.1.2 配置MySQL 5.7 20 2.1.3 启动MySQL服务 26 2.1.4 关闭MySQL服务 28 2.1.5 配置Path变量 29 2.1.6 登录MySQL数据库 30 2.2 Linux平台下安装与配置MySQL 31 2.2.1 安装和配置MySQL 5.7 31 2.2.2 启动MySQL服务 34 2.2.3 登录MySQL数据库 36 2.3 Mac OS X平台下安装与配置MySQL 36 2.3.1 安装MySQL 5.7 36 2.3.2 启动MySQL 5.7 39 2.3.3 配置和登录MySQL 5.7 40 2.4 MySQL常用图形管理工具 41 2.4.1 MySQL官方客户端MySQL-Workbench 41 2.4.2 SQLyog图形管理工具 45 2.4.3 Navicat图形管理工具 48 2.4.4 小结 52 2.5 使用免安装的MySQL软件 52 2.5.1 Windows平台使用免安装的MySQL 5.7 52 2.5.2 Linux平台使用免安装的MySQL 5.7 54 2.5.3 Mac OS X平台使用免安装的MySQL 5.7 56 2.6 MySQL安装中的常见问题 59 2.7 综合示例—MySQL的安装 59 2.8 经典习题与面试题 61 2.9 本章小结 61 第3章 数据库操作 62 3.1 图形化界面操作数据库 62 3.1.1 创建数据库 62 3.1.2 删除数据库 64 3.2 命令行界面操作数据库 64 3.2.1 创建数据库 64 3.2.2 查看数据库 65 3.2.3 选择数据库 65 3.2.4 删除数据库 65 3.3 什么是存储引擎 66 3.3.1 MySQL支持的存储引擎 67 3.3.2 InnoDB存储引擎 69 3.3.3 MyISAM存储引擎 69 3.3.4 MEMORY存储引擎 70 3.3.5 选择存储引擎 70 3.4 综合示例—数据库的创建和删除 71 3.5 经典习题与面试题 72 3.6 本章小结 73 第4章 表操作 74 4.1 数据表的设计理念 74 4.2 创建表 76 4.2.1 创建表的语法形式 76 4.2.2 通过SQLyog创建表 78 4.3 查看表结构 80 4.3.1 DESCRIBE语句查看表定义 80 4.3.2 SHOW CREATE TABLE语句查看表详细定义 81 4.3.3 通过SQLyog查看表 82 4.4 删除表 83 4.4.1 删除表的语法形式 83 4.4.2 通过SQLyog删除表 84 4.5 修改表 86 4.5.1 修改表名—使用RENAME 86 4.5.2 修改表名—通过SQLyog 87 4.5.3 增加字段—在表的*后一个位置增加 88 4.5.4 增加字段—在表的**个位置增加 89 4.5.5 增加字段—在表的指定字段之后增加 91 4.5.6 增加字段—通过SQLyog 92 4.5.7 删除字段—使用DROP 93 4.5.8 删除字段—通过SQLyoug 94 4.5.9 修改字段—修改数据类型 95 4.5.10 修改字段—修改字段的名字 96 4.5.11 修改字段—同时修改字段的名字和类型 97 4.5.12 修改字段—修改字段的顺序 98 4.5.13 修改字段—通过SQLyog 99 4.6 操作表的约束 101 4.6.1 设置表字段的非空约束(NOT NULL,NK) 102 4.6.2 设置表字段的默认值(DEFAULT) 103 4.6.3 设置表字段唯一约束(UNIQUE,UK) 104 4.6.4 设置表字段的主键(PRIMARY KEY,PK)约束 105 4.6.5 设置表字段值自动增加(AUTO_INCREMENT) 109 4.6.6 设置表字段的外键(FOREIGN KEY,FK)约束 110 4.7 综合示例—创建一个学籍数据库和学生信息表 112 4.8 经典习题与面试题 115 4.9 本章小结 116 第5章 MySQL的数据操作 117 5.1 插入数据记录 117 5.1.1 插入完整数据记录 117 5.1.2 插入数据记录一部分 119 5.1.3 插入多条完整数据记录 120 5.1.4 插入多条部分数据记录 122 5.1.5 插入查询结果 123 5.1.6 通过SQLyog来插入数据记录 125 5.2 更新数据记录 128 5.2.1 更新特定数据记录 128 5.2.2 更新所有数据记录 129 5.2.3 通过SQLyog来更新数据记录 131 5.3 删除数据记录 133 5.3.1 删除特定数据记录 133 5.3.2 删除所有数据记录 135 5.3.3 通过SQLyog删除数据记录 136 5.4 综合示例—学生表的数据操作 139 5.5 经典习题与面试题 142 5.6 本章小结 143 第6章 MySQL的数据类型 144 6.1 整数类型 144 6.2 浮点数类型和定点数类型 145 6.3 日期与时间类型 146 6.4 字符串类型 147 6.4.1 CHAR类型和VARCHAR类型 147 6.4.2 TEXT类型 148 6.4.3 ENUM类型 149 6.4.4 SET类型 149 6.5 二进制类型 149 6.5.1 BINARY和VARBINARY类型 150 6.5.2 BIT类型 150 6.5.3 BLOB类型 150 6.6 如何选择数据类型 151 6.7 经典习题与面试题 152 6.8 本章小结 153 第7章 MySQL运算符 154 7.1 运算符简介 154 7.2 算术运算符 155 7.3 比较运算符 159 7.3.1 常用比较运算符 159 7.3.2 特殊功能的比较运算符 161 7.4 逻辑运算符 165 7.5 位运算符 167 7.6 运算符的优先级 169 7.7 综合示例—运算符的使用 170 7.8 经典习题与面试题 172 7.9 本章小结 173 第8章 单表查询 174 8.1 基本数据记录查询 174 8.1.1 查询所有字段数据 174 8.1.2 查询指定字段数据 176 8.1.3 避免重复数据查询 177 8.1.4 实现数学四则运算数据查询 178 8.1.5 设置显示格式数据查询 180 8.2 条件数据记录查询 181 8.2.1 查询指定记录 182 8.2.2 带IN关键字的查询 184 8.2.3 带BETWEEN AND关键字的查询 188 8.2.4 带LIKE的模糊查询 190 8.2.5 带IS NULL空值查询 194 8.2.6 带AND的多条件查询 196 8.2.7 带OR的多条件查询 197 8.2.8 对查询结果排序 199 8.3 统计函数和分组查询 202 8.3.1 MySQL支持的统计函数 202 8.3.2 统计函数针对无数据记录的表 207 8.3.3 简单分组查询 209 8.3.4 实现统计功能分组查询 211 8.3.5 实现多个字段分组查询 213 8.3.6 实现HAVING子句限定分组查询 214 8.4 用LIMIT限制数据记录查询数量 216 8.4.1 不指定初始位置 216 8.4.2 指定初始位置 218 8.5 使用正则表达式查询 220 8.5.1 查询以特定字符或字符串开头的记录 221 8.5.2 查询以特定字符或字符串结尾的记录 222 8.5.3 用符号“.”来替代字符串中的任意一个字符 223 8.5.4 使用“*”和“+”来匹配多个字符 224 8.5.5 匹配指定字符串 225 8.5.6 匹配指定字符串中的任意一个 227 8.5.7 匹配指定字符以外的字符 229 8.5.8 使用{n,}或者{n,m}来指定字符串连续出现的次数 230 8.6 综合示例—查询学生成绩 231 8.7 经典习题与面试题 238 8.8 本章小结 240 第9章 多表查询 241 9.1 关系数据操作 241 9.1.1 并(UNION) 241 9.1.2 笛卡儿积(CARTESIAN PRODUCT) 242 9.2 内连接查询 243 9.2.1 自连接 244 9.2.2 等值连接 246 9.2.3 不等连接 250 9.3 外连接查询 252 9.3.1 左外连接 253 9.3.2 右外连接 254 9.4 复合条件连接查询 255 9.5 合并查询数据记录 257 9.5.1 带有关键字UNION的并操作 258 9.5.2 带有关键字UNION ALL的并操作 261 9.6 子查询 261 9.6.1 为什么使用子查询 262 9.6.2 带比较运算符的子查询 262 9.6.3 带关键字IN的子查询 268 9.6.4 带关键字EXISTS的子查询 269 9.6.5 带关键字ANY的子查询 271 9.6.6 带关键字ALL的子查询 275 9.7 综合示例—查询学生成绩 277 9.8 经典习题与面试题 281 9.9 本章小结 282 第10章 索引 283 10.1 什么是索引 283 10.1.1 索引的含义和特点 283 10.1.2 索引的分类 284 10.1.3 索引的设计原则 285 10.2 创建和查看索引 286 10.2.1 普通索引—创建表时直接创建 286 10.2.2 普通索引—在已经存在的表上创建 288 10.2.3 普通索引—通过ALTER TABLE语句创建 290 10.2.4 唯一索引—创建表时直接创建 291 10.2.5 唯一索引—在已经存在的表上创建 292 10.2.6 唯一索引—通过ALTER TABLE语句创建 293 10.2.7 全文索引—创建表时直接创建 294 10.2.8 全文索引—在已经存在的表上创建 296 10.2.9 全文索引—通过ALTER TABLE语句创建 297 10.2.10 多列索引—创建表时自动创建 298 10.2.11 多列索引—在已经存在的表上创建 300 10.2.12 多列索引—通过ALTER TABLE语句创建 301 10.2.13 通过SQLyog创建和修改索引 302 10.3 删除索引 307 10.3.1 删除索引的语法形式 307 10.3.2 通过SQLyog删除索引 308 10.4 综合示例—创建索引 310 10.5 经典习题与面试题 313 10.6 本章小结 314 第11章 视图 315 11.1 什么时候使用视图 315 11.2 创建视图 316 11.2.1 创建视图的语法形式 316 11.2.2 在单表上创建视图 317 11.2.3 在多表上创建视图 320 11.2.4 通过SQLyog创建视图 322 11.3 查看视图 324 11.3.1 使用DESCRIBE | DESC语句查看视图基本信息 324 11.3.2 使用SHOW TABLES语句查看视图基本信息 325 11.3.3 使用SHOW TABLE STATUS语句查看视图基本信息 326 11.3.4 使用SHOW CREATE VIEW语句查看视图详细信息 328 11.3.5 在views表中查看视图详细信息 329 11.3.6 使用SQLyog查看视图信息 329 11.4 修改视图 332 11.4.1 使用CREATE OR REPLACE VIEW语句修改视图 332 11.4.2 使用ALTER语句修改视图 334 11.4.3 通过SQLyog修改视图 335 11.5 更新视图 337 11.5.1 使用SQL语句更新视图 338 11.5.2 更新基本表后视图自动更新 339 11.5.3 删除视图中的数据 341 11.5.4 不能更新的视图 342 11.6 删除视图 345 11.6.1 删除视图的语法形式 345 11.6.2 通过SQLyog删除视图 347 11.7 综合示例—视图应用 348 11.8 经典习题与面试题 351 11.9 本章小结 352 第12章 存储过程和函数 353 12.1 创建存储过程和函数 353 12.1.1 创建存储过程 354 12.1.2 创建存储函数 357 12.1.3 变量的使用 358 12.1.4 定义条件和处理程序 359 12.1.5 光标的使用 361 12.1.6 流程控制的使用 362 12.1.7 通过SQLyog创建存储过程 366 12.2 调用存储过程和函数 371 12.2.1 调用存储过程 371 12.2.2 调用存储函数 372 12.3 查看存储过程和函数 373 12.3.1 使用SHOW STATUS语句查看存储过程和函数的状态 373 12.3.2 使用SHOW CREATE语句查看存储过程和函数的定义 374 12.3.3 从information_schema.Routine表中查看存储过程和函数的信息 375 12.4 修改存储过程和函数 377 12.4.1 修改存储过程和函数的语法 377 12.4.2 使用SQLyog修改存储过程和函数 379 12.5 删除存储过程和函数 382 12.5.1 删除存储过程和函数的语法 382 12.5.2 使用SQLyog删除存储过程和函数 383 12.6 综合示例—创建存储过程和函数 386 12.7 经典习题与面试题 389 12.8 本章小结 390 第13章 触发器 391 13.1 什么时候使用触发器 391 13.2 创建触发器 392 13.2.1 创建有一条执行语句的触发器 392 13.2.2 创建包含多条执行语句的触发器 394 13.2.3 通过SQLyog创建触发器 396 13.3 查看触发器 399 13.3.1 通过SHOW TRIGGERS语句查看触发器 399 13.3.2 通过查看系统表triggers实现查看触发器 399 13.3.3 通过SQLyog查看触发器 401 13.4 删除触发器 403 13.4.1 通过DROP TRIGGER语句删除触发器 403 13.4.2 通过工具来删除触发器 404 13.5 综合示例—创建并使用触发器 405 13.6 经典习题与面试题 410 13.7 本章小结 411 第14章 事务和锁 412 14.1 事务概述 412 14.2 MySQL事务控制语句 414 14.3 MySQL事务隔离级别 416 14.3.1 READ-UNCOMMITED(读取未提交内容) 416 14.3.2 READ-COMMITED(读取提交内容) 417 14.3.3 REPEATABLE-READ(可重读) 418 14.3.4 SERIALIZABLE(可串行化) 420 14.4 InnoDB锁机制 420 14.4.1 锁的类型 420 14.4.2 锁粒度 421 14.5 本章小结 424 第二篇 MySQL高级应用 第15章 用户安全管理 427 15.1 权限表 427 15.1.1 user表 427 15.1.2 db表 429 15.1.3 table_priv表和columns_priv表 430 15.1.4 procs_priv表 431 15.2 账户管理 432 15.2.1 登录和退出MySQL服务器 432 15.2.2 新建普通用户 434 15.2.3 删除普通用户 436 15.2.4 root用户修改自己的密码 437 15.2.5 root用户修改普通用户的密码 440 15.2.6 普通用户修改密码 443 15.2.7 root用户密码丢失的解决办法 444 15.3 权限管理 452 15.3.1 MySQL的各种权限 452 15.3.2 授权 454 15.3.3 查看权限 456 15.3.4 收回权限 458 15.4 访问控制 459 15.4.1 连接核实阶段 459 15.4.2 请求核实阶段 460 15.5 综合示例—综合管理用户权限 461 15.6 经典习题与面试题 464 15.7 本章小结 465 第16章 数据库备份与恢复 466 16.1 数据备份 466 16.1.1 使用mysqldump命令备份一个数据库 466 16.1.2 使用mysqldump命令备份一个数据库的某几张表 470 16.1.3 使用mysqldump命令备份多个数据库 472 16.1.4 直接复制整个数据库目录 474 16.2 数据恢复 475 16.2.1 使用MySQL命令恢复 475 16.2.2 直接复制到数据库目录 476 16.3 数据库迁移 477 16.3.1 相同版本的MySQL数据库之间的迁移 477 16.3.2 不同版本的MySQL数据库之间的迁移 477 16.3.3 不同数据库之间的迁移 478 16.4 表的导出和导入 478 16.4.1 使用SELECT…INTO OUTFILE导出文本文件 479 16.4.2 使用mysqldump命令导出文本文件 482 16.4.3 使用MySQL命令导出文本文件 487 16.4.4 使用LOAD DATA INFILE方式导入文本文件 491 16.4.5 使用mysqlimport方式导入文本文件 494 16.5 综合示例—数据的备份与恢复 496 16.6 经典习题与面试题 502 16.7 本章小结 503 第17章 日志管理 504 17.1 MySQL软件所支持的日志 504 17.2 操作二进制日志 505 17.2.1 启动二进制日志 505 17.2.2 查看二进制日志 507 17.2.3 使用二进制日志恢复数据库 508 17.2.4 暂停二进制日志 509 17.2.5 删除二进制日志 509 17.3 操作错误日志 512 17.3.1 启动错误日志 513 17.3.2 查看错误日志 513 17.3.3 删除错误日志 514 17.4 通用查询日志 515 17.4.1 启动通用查询日志 515 17.4.2 查看通用查询日志 516 17.4.3 停止通用查询日志 517 17.4.4 删除通用查询日志 518 17.5 慢查询日志 519 17.5.1 启动慢查询日志 519 17.5.2 查看和分析慢查询日志 522 17.5.3 停止慢查询日志 523 17.5.4 删除慢查询日志 524 17.6 综合示例—MySQL日志的综合管理 525 17.7 经典习题与面试题 532 17.8 本章小结 532 第三篇 MySQL实战 第18章 Java操作MySQL数据库 535 18.1 Java连接MySQL数据库 535 18.1.1 JDBC简介 535 18.1.2 下载JDBC驱动MySQL Connector/J 537 18.1.3 Windows下安装MySQL Connector/J驱动 538 18.1.4 Linux和Mac OS X下安装MySQL Connector/J驱动 538 18.1.5 Eclipse环境下安装MySQL Connector/J驱动 538 18.1.6 Java连接MySQL数据库 540 18.2 Java操作MySQL数据库 541 18.2.1 使用Statement执行SQL语句——executeQuery()查询 542 18.2.2 使用Statement执行SQL语句——execute()查询 543 18.2.3 使用Statement执行SQL语句——executeUpdate()插入数据 544 18.2.4 使用Statement执行SQL语句——executeUpdate()修改数据 545 18.2.5 使用Statement执行SQL语句——executeUpdate()删除数据 546 18.2.6 使用PreparedStatement执行SQL语句——executeQuery()查询 547 18.2.7 使用PreparedStatement执行SQL语句——execute()查询 549 18.2.8 使用PreparedStatement执行SQL语句——executeUpdate() 插入数据 550 18.2.9 使用PreparedStatement执行SQL语句——executeUpdate() 修改数据 551 18.2.10 使用PreparedStatement执行SQL语句— executeUpdate()删除数据 552 18.3 Java备份和恢复MySQL数据库 553 18.3.1 使用Java备份MySQL数据库 553 18.3.2 使用Java恢复MySQL数据库 554 18.4 综合示例—人力资源管理系统 556 18.5 本章小结 567 第19章 网上课堂系统数据库设计 568 19.1 系统概述 568 19.2 系统功能 568 19.3 数据库设计和实现 569 19.3.1 设计表 569 19.3.2 设计索引 577 19.3.3 设计视图 578 19.3.4 设计触发器 579 19.4 本章小结 580 第20章 论坛管理系统数据库设计 581 20.1 系统概述 581 20.2 系统功能 582 20.3 数据库设计和实现 583 20.3.1 设计表 583 20.3.2 设计索引 587 20.3.3 设计视图 588 20.3.4 设计触发器 588 20.4 本章小结 590
展开全部

清华数据库技术丛书MYSQL 5.7从入门到实战(视频教学版) 节选

第 1 章 数据库与MySQL 数据库(Database),就是按照数据结构来组织、存储和管理数据的建立在计算机存储设 备上的仓库。我们可以把数据库看成为电子化的文件柜,也就是存储电子文件的处所,用户可 以对文件中的数据进行新增、查询、更新、删除等操作。 本章主要涉及的内容有: 认识数据库:数据库技术经历的阶段,数据库管理系统的功能。 数据库管理系统的基本组成。 认识MySQL 数据库。 通过本章的学习,我们将对MySQL 数据库系统有个初步的了解。 1.1 认识数据库 数据库能够将数据按照特定的规律组织起来,那么我们为什么要学习数据库?数据是如何 存储的?数据库要遵守什么规则?数据库技术都经历过什么阶段?数据库管理系统会提供哪 些功能?当前流行的数据库有哪些? 1.1.1 我们为什么必须学习数据库 我们为什么要学习数据库,可以从几个方面来阐述原因。 1. 数据时代背景 我们身处一个数据时代,举一些简单的例子,来说明这样一个时代大背景。 学校需要把学生的基本信息(学号、姓名、性别、年龄、年级、班级、成绩等)存放在不 同的表中,而这些表都需要存放在数据仓库中,老师可以根据学生的姓名或者学号,查阅学生 的基本信息,如果使用计算机处理这些工作,管理效率就可以得到极大的提升。 我们去商场或者超市购物结账时,收银员的电脑里有进销存软件,该软件本质上是记录和 处理消费数据,顾客每一次购买的商品种类、数量、金额、时间以及每次购买所获得的积分, 都通过该软件存储在后台数据库当中。 4 MySQL 5.7 从入门到实战(视频教学版) 我们的智能手机上的每一个应用,无时无刻不在记录和处理关于我们日常生活的数据。购 物网站会根据我们的每次一次网购,分析我们的购物喜好,从而向我们推荐合适的商品;健身 软件会每天记录我们的运动数据;育儿软件会记录婴儿成长相关的数据;聊天软件会记录我们 的每一条聊天记录;社交软件会根据我们分享的内容而推送相应的广告;电子钱包会记录我们 的每一笔收入和消费;连家用摄像机都会记录用户的基本信息上传到云端服务器,记录在数据 库中。这就是我们所处的互联网大数据时代,数据无处不在,我们必须要学习数据库知识,才 能更好地理解这个数据世界。 2. 软件行业工作性质 对于软件行业的同学来说: 程序 = 算法 + 数据结构 无论是传统的软件,还是互联网网站,或者移动端的应用,都要处理数据。数据库可以说 是学习软件开发的核心课程之一,几乎绝大部分软件都涉及数据库,很多数据必须存在数据库 中,也许,*初少量的信息可以存在文件中,但是,随着数据量的增大,文件已经不能很理想 地处理这些数据,所以必须使用数据库去处理数据,因为数据库速度更快、更好维护、开发效 率更高。 3. 数据库设计优劣 在数据库设计阶段,对于同一领域建模,不同的建模人员得到的结果不一样,从而转换后 的关系模式也不一样。这样就存在关系模式的优劣之分。学习数据库,就是要学习前人总结的 一些规则、常用的表示方法,从而能够设计出更合理、高效的模式。 1.1.2 数据库技术经历的阶段 本小节将为读者介绍数据库技术经历的3个阶段,即层次数据库和网状数据库技术阶段、 关系数据库技术阶段和后关系数据库技术阶段。 1. 层次数据库和网状数据库技术阶段 层次数据库系统是较早研制成功的数据库系统,*典型的是1968 年由IBM 研制的IMS (Information Management System)。1966 年,美国国家航空航天局(NASA) 承包商——北美 航空,希望能够开发一个计算机程序,用于追踪火箭的数百万个部件。作为对这个需求的回应, 在 1968 年,IBM 推出了全球**个商用数据库管理系统,1969 年,该系统改名为IMS(信 息管理系统)。 网状数据库是处理以记录类型为节点的网络数据模型的数据库。世界上**个网状数据库 系统是美国通用电气Bachman 等人在1964 年开发成功的IDS(IntegratedDataStore),IDS 奠 定了网状数据库的基础。 5 第1章 数据库与MySQL 2. 关系数据库技术阶段 1970 年,IBM 的研究员,有“关系数据库之父”之称的埃德加·弗兰克·科德博士首次 提出了数据库的关系模型的概念,奠定了关系模型的理论基础。20 世纪70年代,IBM 公司的 San Jose 实验室研制的关系数据库问世。20 世纪80 年代以来,计算机厂商推出的数据库管理 系统几乎都支持关系模型,数据库领域当前的研究工作大都以关系模型为基础。关系数据库技 术的代表数据库管理系统为Oracle、DB2、SQLServer、MySQL、Sybase 等。 3. 后关系数据库技术阶段 后关系数据库,实质上是在关系数据库的基础上,融合了面向对象技术和Internet网络应 用开发背景而发展起来的。它结合了传统数据库如层次、网状和关系数据库的一些特点,以及 Java 等编程工具环境,适应于以Internet Web 为基础的应用,开创了关系数据库的新时代。从 后关系型数据库模型的提出,到现在已经经历了20多年,随着后关系型数据库技术的发展, 后关系型数据库产品已经不再停留在模型的基础阶段,例如美国InterSystems 公司发布的 Caché,就是一个用于高性能事务应用的后关系型数据库管理系统,该系统具有面向对象的许 多功能和一个事务型多维数据模型。 1.1.3 数据库管理系统提供的功能 数据库管理系统(Database Management System)是数据库系统的核心,是管理数据库的 软件。数据库管理系统就是实现把用户意义下抽象的逻辑数据处理,转换成为计算机中具体的 物理数据处理的软件。数据库管理系统的主要功能有: 1. 数据定义 数据库管理系统提供数据定义语言(Data Definition Language,DDL),供用户定义数据库 的三级模式结构、两级映像以及完整性约束和保密限制等约束。简单地说,DDL 用来创建数 据库中的各种对象——表、视图、索引、同义词、聚簇等,例如: CREATE TABLE/VIEW/INDEX/SYN/CLUSTER 2. 数据操作 数据库管理系统提供的数据操作语言(Data Manipulation Language,DML),供用户实现 对数据的追加(INSERT)、删除(DELETE)、更新(UPDATE)等操作。 3. 数据控制 数据库管理系统提供的数据控制语言(Data Control Language,DCL),包含数据完整性控 制、数据安全性控制和数据库的恢复等,具体如授权(GRANT)、回滚(ROLLBACK)、提交 (COMMIT)等。 6 MySQL 5.7 从入门到实战(视频教学版) 1.2 当前流行的数据库 在当前主流数据库中,商业数据库以甲骨文公司的Oracle 数据库为主,另外还有IBM 公 司的DB2 数据库、微软公司的SQL Server 数据库,同时还有很多优秀的免费开源数据库,像 PostgreSQL、MySQL等都深受欢迎。 先来看看数据库排行榜DB-Engines Ranking(https://db-engines.com/en/ranking),如图1-1 和图1-2 所示,可以看到关系数据库中,Oracle 数据库、MySQL 数据库、SQL Server 数据库 的流行度远超于其他数据库;而非关系数据库中,比较流行的有MongoDB 和Redis 等。 图1-1 数据库流行度排名 虽然Oracle 和MySQL的排名在短期内均没有发生变化,但这两个数据库的冠军之争依然 扣人心弦,可以看到MySQL 数据库的人气直逼Oracle 数据库。从图1-2中可以看出,非关系 数据库的发展比较迅猛。 图1-2 数据库趋势流行度排名

清华数据库技术丛书MYSQL 5.7从入门到实战(视频教学版) 作者简介

张婷,哈尔滨工业大学硕士,曾先后在华为杭州研究所、诺基亚西门子网络公司、阿里巴巴集团担任高级开发工程师和资深开发工程师职务。有10年的C/C++、Java开发及系统设计经验,专注于互联网电商交易及大数据应用相关领域。

商品评论(0条)
暂无评论……
书友推荐
编辑推荐
返回顶部
中图网
在线客服