Python开发【第十一篇】:MySQL
数据库介绍
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。每个数据库都有一个或多个不同的API用于创建、访问、管理、搜索和复制所保存的数据。每个数据库都有一个或多个不同的API用于创建、访问、管理、搜索和复制所保存的数据。我们可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理大的数据量。所谓关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。
RDBMS即关系数据库管理系统(Relational Database Management System)的特点:
1、数据以表格的形式出现。
2、每行为各种记录名称。
3、每列为记录名称所对应的数据域。
4、许多行和列组成一张表单。
5、若干的表单组成database。
RDBMS常用术语
数据库:数据库是长期存储在计算机内、有组织的、可共享的数据集合,具有较小的冗余度,较高的数据独立性和易扩展性。
行:在SQL中把传统的关系模型中的元组称为行(row)。
列:在SQL中把传统的关系模型中的属性称为列(coloumn)。
基本表:在SQL中把传统的关系模型中的关系模式称为基本表(bsetble),基本表示本身独立的表,一个关系就对应一个基本表。
实表:基本表就被称为实表,它是实际存放在数据库中表。
虚表:视图就被称为虚表,因为在数据库中只存储视图的定义而不存放视图所对应的数据。
冗余:指数据之间的重复,也可以说是同一数据存储在不同数据文件中的现象。
记录:一个记录就是数据表中的一行,一个数据表中的每一个记录均有一个唯一的编号(记录号)。
元组:在关系中记录称为元组。
超键:在关系中能唯一标识元组的属性集称为关系模式的超键。注意,超键是一个属性集。
候选键:不含有多余属性的超键称为候选键。
主键:用户选作元组标识的一个候选键为主键。
外键:某个关系的主键相应的属性在另一关系中出现,此时该主键就是另一关系的外键。
复合键:将多个字段作为一个主键。
索引:对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。
实体完整性规则:这条规则要求关系中元组在组成主键的属性上不能有空值。如果出现空值,那么主键值就起不了唯一标识元组的作用。
参照完整性规则:这条规则要求不引用不存在的实体。
1NF:第一范式。如果关系模式R的所有属性的值域中每一个值都是不可再分解的值,则称R是属于第一范式模式。如果某个数据库模式都是第一范式,则称该数据库存模式属于第一范式的数据库模式。第一范式的模式要求属性值不可再分裂成更小部分,即属性项不能是属性组合和组属性组成。
2NF:第二范式。如果关系模式R为第一范式,且R中每一个非主属性完全函数依赖于R的某个候选键,则称是第二范式;如果某个数据库模式中每个关系模式都是第二范式,则称该数据库模式属于第二范式的数据库模式。
3NF:第三范式。如果关系模式R是第二范式,且每个非主属性都不传递依赖于R的候选键,则称R是第三范式的模式。如果某个数据库模式中的每个关系模式都是第三范式,则称为3NF的数据库模式。
BCNF:BC范式。如果关系模式R是第一范式,且每个属性都不会传递依赖于R的候选键,那么称为R是BCNF的模式。
4NF:第四范式。设R是一个关系模式,D是R上的多值依赖集合。如果D中成立非平凡多值依赖X、Y时,X必是R的超键,那么称R是第四范式的模式。
Mysql数据库
Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System关系数据库管理系统)应用软件之一。由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关系数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL数据库主要特点:
1、使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
2、支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。
3、为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
4、支持多线程,充分利用CPU资源。
5、优化的SQL查询算法,有效地提高查询速度。
6、既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。
7、提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列明。
8、提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
9、提供用于管理、检查、优化数据库操作的管理工具。
10、支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
11、支持多种存储引擎。
12、Mysql是开源的,所以你不需要支付额外的费用。
13、Mysql使用标准的SQL数据语言形式。
14、Mysql对PHP有很好的支持,PHP的目前主流的web开发语言。
15、Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统。
Mysql数据的安装使用
http://www.cnblogs.com/yinshoucheng-golden/p/6441975.html
posted on 2017-12-08 13:18 yinshoucheng 阅读(287) 评论(0) 编辑 收藏 举报