SQL基础
数据库基础知识
数据库是什么
官方定义: 数据库 (Data Base,简写为 DB) 是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。 简单理解 数据库是用于保存数据的容器。你可以把它想象成一个虚拟的“文件柜”,其中可以放入多个“文件”,按照一定的结构保存和管理数据,而数据表之间又往往存在交叉引用的关系,这种关系使数据库又被称为关 系型数据库。
DBMS
数据库管理系统(Database Management System,DBMS)是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库。常用的数据库管理软件有 MySQL、Access、SQLite、SQL SERVER、Oracle等, MySQL是目前最常用的数据库管理软件。
SQL
SQL概述
SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL不区分大小写。
SQL语法
创建/删除数据库
create database (数据库名称)student;
DROP DATABASE student;
show create database student;
创建/删除表
create table 表名(
列名1 列类型 [<列的完整性约束>],
列名2 列类型 [<列的完整性约束>],
... ...
)
CREATE TABLE employe(
emp_id INT AUTO_INCREMENT,
emp_name VARCHAR(20) NOT NULL,
emp_add VARCHAR(60) NOT NULL,
emp_date DATE,
)
drop table employe;
插入数据
INSERT [INTO] <表名> [列名] VALUES <值列表>
insert into employee values (1000,'jackosn','changan',2021-11-01);
insert into employee(emp_name) values ('tom');
更改数据
UPDATE <表名> SET <列名 = 更新值>
[WHERE <更新条件>]
update employee set emp_name='Tom' where emp_name='Alex';
删除数据
DELETE FROM <表名> [WHERE <删除条件>]
delete from student where age<18;
此语句删除表中的行,如果不带where子句,则删除整个表中的记录,但是表不被删除
完整性约束
数据库中的数据是从外界输入的,而数据的输入由于种种原因,会发生输入无效或错误信息。保证输入的数据符合规定,成为了数据库系统,尤其是多用户的关系数据库系统首要关注的问题。 数据完整性 = 精确性 + 可靠性
完整性的分类
- 实体完整性:是指保证表中所有的行唯一。实体完整性要求表中的所有行都有一个唯一标识符。这个唯一标识符可能是一列,也可能是几列的组合,称为主键 。也就是说,表中的主键在所有行上必须取唯一值。
- 域完整性:是指一个列的输入有效性,是否允许为空值。强制域完整性的方法有:限制类型、格式或可能值的范围。
- 参照完整性:是指保证主关键字和外部关键字之间的参照关系。它涉及两个或两个以上表数据的一致性维护。
完整性约束
MySQL 常见完整性约束: PRIMARY KEY 主码约束(主键) UNIQUE 唯一性约束 NOT NULL 非空值约束 AUTO_INCREMENT 用于整数列默认自增1 UNSIGNED 无符号整数 DEFAULT default_value 默认值约束 FOREIGN KEY 外键约束
CREATE TABLE EMPLOYEE
(
emp_id int PRIMARY KEY,
dep_id int,
emp_name VARCHAR(20) NOT NULL,
emp_gender BIT NOT NULL,
)
|