初识SQL
一、数据库基础
1、什么是数据库?
数据库(database),保存有组织的数据的容器(通常是一个文件或一组文件)。
数据库和数据库软件的区别:
数据库软件应称为DBMS(数据库管理系统)。
数据库是通过DBMS创建和操纵的容器。
数据库可以是保存在硬件设备上的文件,但也可以不是。很大程度上说,数据库究竟是文件还是别的东西并不重要,因为你并不直接访问数据库,你使用的是DBMS,它替你访问数据库。
2、表
(1)表(table),某种特定类型数据的结构化清单。
存储在表中的数据是一种类型的数据或一个清单。数据库中的每一个表都有一个名字,用来表示自己。此名字是唯一的,这表示数据库中没有其他表具有相同的名字。
表名:表明的唯一性取决于多个因素,如数据库名和表名等的结合。在相同的数据库中不能两次使用相同的表名,但在不同的数据库中却可以使用相同的表名。
(2)模式(schema),关于数据库和表的布局及特性的信息。
描述表的这组信息就是所谓的模式,模式可以用来描述数据库中的特点的表以及整个数据库(和其中表的关系)。
3、列和数据类型 (表由列组成。列中存储着表中某部分的信息。)
(1)列(column),表中的一个字段。所有的表都是由一个或多个列组成的。
比如数据库就是一个网格,网格中的每一列存储着一条特定的信息。例如,在顾客表中,一个列存储着顾客编号,另一个列存储着顾客姓名,地址、城市等等都存储在各自的列中。
(2)数据类型(datatype),所容许的数据的类型。每个表列都有相应的数据类型,它限制(或容许)该列中存储的数据。数据类型限制可存储在列中的数据类型(例如,防止在数值字段中录入字符值)。数据类型还帮助正确的排序数据,并在优化磁盘使用方面起重要作用。
4、行
行(row),表中的一个记录。
表中的数据是按照行存储的,所保存的每一个记录存储在自己的行内。如果将表想象为网格,网格中垂直的列为表列,水平行为表行。(例如,顾客表可以存储一个顾客。表中的行数为记录的总数。)
行(row)、数据库记录(record),在很大程度上这两个术语是可以互相代替的。但从技术上来讲,行才是正确的术语。
5、主键
主键(primary key),一列(或一组列),其值能够唯一区分表中的每个行。
表中的每一行都应该有可以标识自己的一列(或一组列)。(例如,一个顾客表可以使用顾客编号列,而订单表可以使用订单ID,雇员表可以使用雇员ID或雇员社会保险号。)
唯一标识标中每行的这个列(或这组列)称为主键。主键用来表示一个特定的行。没有主键,更新或删除表中特定行很困难,因为没有安全的方法保证只涉及相关的行。
表中的任何列都可以作为组件,只要满足一下条件:
任意两行都不具有相同的主键值。
每一行都必须具有一个主键值(主键列不允许NULL值)
主键值规则:
主键通常定义在表的一列上,但这不是必须的,也可以一起使用多个列作为主键。在使用多个列作为主键。在使用多列作为主键时,上述条件必须应用到构成主键的所有列,所有列值的组合必须时唯一的(但单个列的值可以不唯一)。
主键的最好习惯:
不更新主键列中的值;
不重用主键列的值;
不再主键列中使用可能会更改的值。(例如,如果使用一个名字作为主键以标识某个供应商,当该供应商合并和更改其名字时,必须更改这个主键。)
二、什么是SQL
1、SQL:是结构化查询语言(Structured Query Language)的缩写。SQL是一种专门用来与数据库通信的语言。
2、SQL的优点:
(1)SQL不是某个特定数据库供应商专有的语言。几乎所有重要的DBMS都支持SQL。能与所有数据库打交道。
(2)SQL简单易学。它的语句全都是描述性很强的英语单词组成,而且单词数目不多。
(3)SQL尽管看上去很简单,但实际上是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作。
浙公网安备 33010602011771号