认识数据库
数据库(DataBase)简称DB:存放数据的仓库,是为了实现一定目的,按照某种规则组织起来的数据的集合。
从广义的角度上看,计算机中任何可以保存数据的文件或者系统都可以称之为数据库。
如一个word文件、一个Excel文件等
在IT专业 领域中,数据库一般指由专业技术团队开发的用于存储数据的软件系统。
专业的数据库系统需要有较小的数据冗余度,较高的数据安全性和易扩展性。
数据的形式:文字、数码、符号、图形、声音等。
可以长期保存数据,并对数据进行处理。
相关术语
信息:泛指人类社会传播的一切内容。
数据:数据不等于信息,数据是对客观事件进行记录并可以鉴别的符号,在计算机中数据以二进制信息单元 0,1 的形式表示。
数据是数据库中存储的基本对象,除了基本的数据形式数字外,还有文字、图片、视频、声音等形式
大数据:一个体量特别大、数据类别特别大的数据集、并且这样的数据集无法用传统的工具对其内容进行提取、管理和处理
特点:数据体量特别大、数据类型多样、处理速度快、价值密度低,是数据由量变到质变产生的一个概念
数据库(database) : 保存有组织的数据容器(通常是一个文件或一组文件)。
注意: 数据库(database) 与 数据库管理系统(DBMS)
数据库是通过DBMS 创建和操纵的容器,数据库是可以保存在硬设备的文件,但可以不是,因为你并不是直接访问数据库,而是通过使用DBMS,替你访问数据库。
表(table):某种特定类型数据的结构化清单。
如果把数据库理解成一个文件柜,那么表可以看成是文件柜中的某一个抽屉 ,存储在表中的数据是一种类型的数据或一个清单,然后根据存储的这一类东西起一个名字来标识,这样就很有调理,方便查找,很nice,但是相同的数据中不要起相同的表名,以为这样就违背了初
模式(schema) : 关于数据库和表的布局及特性的信息。
模式可以用来描述数据库中特定的表以及整个数据库和其中表的信息,如描述表的一些特性,数据如何在表中存储,数据如何分解,各部分信息如何命名等
列(column): 表中的一个字段。所有表都是由一个或多个列组成。
数据库中每个列都有相应的数据类型,数据类型定义列可存储数据的种类。
数据类型: 所容许的数据的类型。每个表列都有相应的数据类型,它限制或容许该列中存储的数据(限制和容许描述相同的事感觉有点不一样)
好处:限制类可存储在列中的数据种类,防止录入错误,出现数据混乱
帮助正确的排序数据,优化对磁盘的使用
行(row): 表中的一个记录。有的称为数据库记录(record),但是在技术上称为行
表中的数据是按行存储的,所保存的每个记录存储在自己的行内。
若把表看成一个网格,那么垂直的列成为表列,水平的成为表行
主键(primary key): 一列(或一组列),其值能够唯一区分表中每个行。
表中每一行都应该有唯一标识自己的一列(或一组列),唯一标识表中每行的这个列(或这组列)称为主键,主键用来表示一个特定的行,方便安全的更新或删除表中特定行。
虽然不总是需要主键,但是每个表要具有一个主键,方便以后的对数据进行操纵和管理。可以作为主键的条件
1、任意两行都不具有相同的主键值。
2、每个行都必须有一个主键值(主键列不允许NULL 值)
3、主键可以是一列也可以是多列,在是引用多列作为主键时,所有列值的组合必须是唯一的(但单个列值可以不是唯一的)
注意:主键的最好习惯
1、不更新主键列中的值
2、不重用主键列的值
3、不在主键列中使用可能会更改的值(一般在sqlserver 中使用不为空的Guid(uniqueidentifier类型) 作为唯一标识,MySQL中使用自增的id 作为主键 )
SQL(Structured Query Language) : 结构化查询语言。专门用来与数据库通信的语言。
优点:
1、与其他程序设计语言相比,SQL 简单易学,由很少的词构成,它的语句都是由描述性很强的英文单词构成,可以使用简单有效的方法从数据库中读写需要的数据
2、SQL 不是某个特定数据库供应商专有的语言,几乎所有重要的DBMS 都支持SQL,学会后几乎可以与所有的数据打交道,只不过其他的DBMS 有一些其他特性,但是基本的语句还是大致相同的。
3、虽然语言简单,但是一个强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据操作。
4、SQL 不是一种专利语言,而且存在一个标准委员会,它们试图定义可供所有DBMS 使用的SQL 语法,当然还在实现目标的路上,虽然现在任意两个的DBMS 实现的SQL 都不完全相同,但是基本相同,他像一个基础一样