MySQL 是完全网络化的跨平台关系型数据库系统,同时是具有客户机/服务器体系结构的分布式数据库管理系统。MySQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用。由于它的功能强大、使用简便、管理方便、运行速度 快、安全可靠性强、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与 Apache 和 PHP/PERL 结合,为建立基于数据库的动态网站提供了强大动力。
SQL和MySQL
- SQL是结构化查询语言的缩写,是当前关系数据库管理系统(RDBMS)的ANSI标准语言
- SQL包含关系型操作,允许数据操作或数据处理的主要语句是SELECT、INSERT、UPDATE和DELETE
- SQL允许数据定义或结构化处理的基本语句是CREATE、ALTER和DROP
- MySQL 是一个关系数据库系统,支持 SQL 查询语言
- MySQL 可以是免费的,你不需要为它付费
- MySQL 系统的速度非常快,同样它的性能也是十分优良的
- MySQL 是一个管理简捷的数据库,它没有庞大而臃肿的可视化管理工具
关系数据库管理系统(RDBMS)
特点:
- 数据的基础是关系
- 数据表的操作只产生关系
- 关系就是一个描述两个集合的元素如何相互联系或如何一一对应的数学概念
关系表的组成:
- 属性(attribute)或列: 标示位置,有作用域或数据类型,例如字符或整数
- 元组(tuple)或行: 就是数据
- 列和行的交集通常被叫做单元
成为关系模型的必要条件:
- 贮存在单元中的数据必须是原子的,即每个单元只能存贮一条数据
- 贮存在列下的数据必须具有相同数据类型
- 每行是唯一的(没有完全相同的行)
- 列没有顺序
- 行没有顺序
- 列有一个唯一性的名称
关系模型的两个原则:
- 实体完整性原则(entity integrity rule)
- 引用完整性原则(referential integrity rule)
主键(primary key) 是能唯一标识行的一列或一组列的集合,数据库设计者决定哪些列的组合能够最准确和有效地反映业务情形,这并不意味着其
他数据未被存贮,只是那一组列被选作主键而已。
MySQL的体系结构
使用 MySQL 时存取数据时,必须至少使用两个或者说两类程序:
- 一个位于存放您的数据的主机上的程序——数据库服务器
- 连接到数据库服务器的程序——客户机,MySQL就是最常见的客户机程序
MySQL 的客户机/服务器体系结构具有如下优点:
- 服务器提供并发控制,使两个用户不能同时修改相同的记录
- MySQL 可以非常出色的在因特网上工作,因此不必在数据库所在的机器上注册,可以在任何位置运行一个客户机程序连接到网络上的服务器
- MySQL 含有一个灵活而又有成效的安全系统,只允许那些有权限的人访问数据库并且只能完成他们被允许的操作
MySQL 使用的 SQL 语言
表、列和函数
表 是数据在一个 MySQL 数据库中的存储机制,它包含一组固定的列,如下表所示。 表中的列描述该表所跟踪的实体的属性,每个列都有一个名字及各自的特性。
表格 Teachers
ID | Name | Tel | Sex |
---|---|---|---|
1 | Tom | 12345678 | M |
2 | Mary | 31245678 | F |
3 | Mike | 12354876 | M |
4 | John | 12354786 | M |
... | ... | ........ | ... |
列 由两部分组成:数据类型(datatype)和长度(length)。
函数 (function)是存储在数据库中的代码块,其差别在于函数可以把值返回调用程序。
SQL 的语句
SQL 是一种典型的非过程化程序设计语言,这种语言的特点是:只指定哪些数据被操纵,至于对这些数据要执行哪些操作,以及这些操作是如何执行的,则未被指定。例如,我们从上面的表中取出 ID 为 1 的数据:
<pre><code>
SELECT * FROM Teachers WHERE ID=1
</code></pre>
小结
本节介绍了MySQL及其使用的查询语言SQL,采用列表的形式将读书所得的梗概摘录至此。后续将逐步展开MySQL的语法和使用。
网友评论