一、数据库、SQL简介
1.数据库简介
1.1数据库:保存有组织的数据的容器(通常是一个文件或一组文件)
数据库软件:称为数据库管理系统(DBMS),数据库是通过DBMS创建和操纵的。通常用户使用DBMS访问数据库。
表:表示一种结构化的文件,可用来存储某种特定类型的数据。存储在表中的数据是一种类型的数据或一个清单。
数据库中的每个表都有一个标识,此标识是唯一的。
模式:描述表的一整组信息就是模式,模式是关于数据库和表的布局及特性的信息。比如数据在表中如何存储,如何分解,
各部分信息如何命名等这组信息就称为模式。
列和数据类型:表由列组成,列中存储着表中某部分信息。
列:表中的一个字段。所有表都是由一个或多个列组成的。
数据类型:数据库表中每一列都有相应的数据类型。数据类型定义列可以存储的数据种类。
行:表中的数据是按行存储的,行是表中的一个记录。
主键(primary key):主键是表中每一行唯一标识的一列或一组列。即某个字段或某一组字段。
唯一表示中每行的这个列(或这组列)称为主键。主键用来表示一个特定的行。
没有主键更新或删除表中特定的行很困难,因为没有安全的方法保证只涉及相关的行。
表中任何列都可以作为主键,只要满足一下条件:
任意两行都不具有相同的主键值;
每个行都必须具有一个主键值(主键列不允许NULL值);
主键列中的值不允许修改或更新;
主键值不能重用(如果某行从表中删除,它的主键不能赋给以后的新行)
主键通常定义在表的一列行,但这并不是必需的,也可以一起使用多个列作为主键。在使用多列作为主键时,
上述条件必须应用到构成主键的所有列,
所有列值的组合必须是唯一的(但单个列的值可以不唯一)
1.2 什么是SQL
SQL:SQL是结构化查询语言,专门用来与数据库通信的语言。
1.3 MySQL
关键字:key word 作为MySQL 语言组成的一个保留字。决不要用关键字命名一个表或列。
数据库、表、列、用户、权限等的信息被存储在数据库和表中(MySQL 使用 MySQL 来存储这些信息)。内部的表一般不直接访问。可用 MySQL 的 SHOW 命令来显示这些信息 。
SHOW DATABASES ; 返回可用数据库的一个列表。包含在这个列表中的可能是 MySQL 内部使用的数据库。如 mysql、information_schema
SHOW TABLES ; 返回当前选择的数据库内可用表的列表。
SHOW COLUMNS FROM approval_recor ; 用来显示表列;对 approval_recor 数据表中的每个字段返回一行,行中包含字段名、数据类型、是否允许 NULL、键信息、默认值以及其他信息。
SHOW STATUS 显示数据库服务器状态信息
SHOW CREATE DATABASE 和 SHOW CREATE TABLE ,分别用来显示创建特定数据库或表的 MySQL 语句
SHOW GRANTS 用来显示授予用户(所有用户或特定用户)的安全权限
SHOW ERRORS 和 SHOW WARNINGS,用来显示服务器错误或警告消息
什么是自动增量?
某些表列需要唯一值。例如,订单编号、雇员ID 或 顾客ID。在每个行添加到表中时,MySQL 可以自动地为每个行分配下一个可用编号,不用在添加一行时手动分配唯一值。这个功能就是所谓的自动增量。
如果需要用到自动增量,则必须在用 CREATE 语句创建表时把它作为表定义的组成部分。