前言
验收SQL让我看到了自己的不足,知道自己还有很多学习的地方,下面是我对SQL书中重点知识的总结:
数据库:
创建 CREATE DATABASE myFirstDatabase
数据库名称的设置:用字母、数字、下划线,不用标点,一般以数字开始,提高安全性。
②删除 DROP DATABASE myFirstDatabase
数据
①插入新数据
INSERT INTO table_name (column_names) VALUES (data_values)
②更新数据
UPDATE table_name
SET column_name=value
WHERE condition
③删除数据
DELETE FROM MemberDetailes
表
①创建表
CREATE TABLE name_of_table
name_of_column_datatype
②更改表
ALTER TABLE name_of_table
ADO name_of_field data_type
③删除一个现有列
ALTER TABLE name_of_table
DROP COLUMN name_of_field
④删除现有表
DROP TABLE name_of_table
增
多记录添加
Insert into target field1[,field2[,…]]
Select [source,] field1 [,field,[,…] ]
From tableexpression
单记录添加:
Insert into target field1[,field2[,…]]
Values (value[ , value2 [,…]])
删
Delect [table.*] from table where expl
改
Update table set newvalue where expl
查
Select field1[,field2[,…]]into newtable
From source
约束:
Not NULL约束:不能为空值(‘0’是值,不是空值)
UNIQUE约束:防止一个特定的列中两个记录具有一致的值
CHECK约束:检查输入到记录中的值师父满足一个条件
PRIMARY KEY约束:UNIQUE约束和Not NULL约束的集合
关键字:
HAVING子句针对每个分组的,过滤掉了不匹配条件的分组
WHERE子句针对每个记录的,因此他过滤了不匹配条件的记录
GROUP BY子句跟在HAVING子句后面使用,HAVING子句过滤的是GROUP BY子句所找到的分组
补充:DROP与DELECT的区别
DROP一般用于删除整体性数据 如表、模式、索引、视图、完整性限制等
DELECT用于删除局部性数据 如表中的某一元组
当你要保留该表,删除全部记录时用TRUNCATE
思维导图: