第一课了解SQL

时间:2023-01-06 20:04:30

1.1 数据库基础

  其实一直在使用这数据库,当你在邮箱中查询名字时,当在网站上进行搜索,在自动取款机上使用ATM卡,这些操作都是在使用数据库

1.1.1 数据库

  数据库:保存有组织的数据的容器(通常是一个文件或一组文件)。

误用导致混淆:

    人们通常用数据库这个术语来代表他们使用的数据库软件,这是不正确的,也因此产生了许多混淆。确切来说,数据库软件称为数据库管理系统(DBMS)。数据库是通过DBMS创建和操纵的容器,而具体它究竟是什么,形式如何,各种数据库都不一样。

1.1.2

表(table): 某种特定类型数据的结构化清单。

数据库中的每个表都有一个名字来标识自己。这个名字是唯一的,即数据库中没有其他表具有相同的名字。

表具有一些特性,这些特性定义了数据在表中如何存储,包含存储什么样的数据,数据如何分解,个部分信息如何命名等信息。

1.1.3 列和数据类型

列(column:表中一个字段。所有表都是由一个或多个列组成的。

 

数据库中的每个列都有相应的数据类型。数据类型(datatype)定义了列可以存储那些数据类型。 例如:列中存储的是数据则相应的数据类型应该为数值类型。如果列中存储的是日期,文本,注释,金额等,则应该规定好恰当的数据类型。

 

数据类型:所允许的数据的类型每个表列都有相应的数据类型,它限制(或允许)该列中存储的数据。

        数据类型限定了可存储在列中的数据种类。

        数据类型还帮助正确的分类数据,并在优化磁盘使用方面起重要的作用。因此在创建表时必须特别关注所用的数据类型。

1.1.4

行(row):表中的一个记录。

表中的数据是按行存储的,所保存的每个记录存储在自己的行内。如果将表想象为网格,网格中垂直的列为表列,水平行为表行。

1.1.5 主键

主键(primary key):一列(或一组列),其值能够唯一标识表中每一行。

应该总是定义主键:

    虽然并不总是需要主键,但多数数据库设计这都会保证他们创建的每个表具有一个主键,以便于以后的数据操作和管理。

表中的任何列都可以作为主键,只要他满足一下条件:

  1  任意两行都不具有相同的主键值;

  2 每一行都必须具有一个主键值(主键列不允许NULL值);

  3  主键列中的值不允许修改或更新;

  4  主键值不能重用(如果某行从表中删除,它的主键不能赋给以后的新行)。

主键通常定义在表的一列上,但并不是必需这么做,也可以一起使用多个列作为主键。在使用多列做主键时,上述条件必须应用到所有列,所有列值必须是唯一的(但单个列的值可以不唯一)。

还有一种非常重要的键称为外键。

1.2 什么是SQL

SQL Structured Query Language(结构化查询语言)的缩写。SQL是一种专门用来与数据库沟通的语言。

SQL有如下优点:

  1  SQL 不是某个特定数据供应商专有的语言。几乎所有重要的DBMS都支持SQL,所以学习此语言使你几乎能与所有数据库打交道。

  2  SQL简单易学。它的语句全都是由有很强描述性的英语单词组成,而且这些单词的数目不多。

  3  SQL虽然看上去很简单,但实际上有一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作。