DataWhale 组队学习:SQL-TASK01
基础知识点
- 数据(data):描述事物的符号记录称为数据
- 数据库(DataBase, DB): 长期存储在计算机内,有组织,可共享的大量数据的集合。按一定的数据模型组织、描述和存储。
- 较小的冗余度(redundancy)
- 较高的数据独立性(data independency)
- 易扩展性(scalability)
- 为各种用户共享
- 数据库管理系统(DataBase Management System, DBMS)
DDL
数据定义语言, 用于创建或者删除存储数据用的数据库以及数据库中表的对象
- CREATE:创建数据库和表等对象
- DROP: 删除数据库和表等对象
- ALTER:修改数据库和表等对象的结构
DML
数据操纵语言用来查询或者变更表中的记录
- SELECT: 查询表中的数据
- INSERT: 向表中插入新数据
- UPDATE:更新表中的数据
- DELETE:删除表中的数据
DCL
数据控制语言:用来确认或者取消对数据库中数据的变更
- COMMIT: 确认对数据库中的数据进行的变更
- ROLLBACK:取消对数据库中的数据进行变更
- GRANT : 赋予用户操作权限
- REVOKE : 取消用户的操作权限
SQL语法规范
- MySQL本身不区分大小写,但强烈要求关键字大写,表名、列名用小写;
- 创建表时,使用统一的、描述性强的字段命名规则保证字段名是独一无二且不是保留字的,不要使用连续的下划线,不用下划线结尾;最好以字母开头
- 关键字右对齐,且不同层级的用空格或缩进控制,使其区分开;
- 表别名和列别名尽量用有具体含义的词组,不要用a b c,不然以后review的时候会非常痛苦;
- 运算符前后都加一个空格;
- 当用到多个表时,请在所有列名前写上引用的表别名;
- 每条命令用分号结尾;
- 养成随手写注释的习惯
数据类型的指定
四种基本数据类型
- INTEGER:用来制定存储证书的列的数据类型(数字型), 不能存储小数。
- CHAR:用来存储定长字符,当列中存储的字符串长度达不到最大长度时,使用半角空格补足,浪费存储空间,一般不使用
- VARCHAR: 用来存储可变长度字符串,节省空间
- DATE:用来制定存储日期的列
约束设置
除了数据类型外,对列中存储的数据进行限制或者追加条件的功能
- NOT NULL 非空约束,该列必须输入数据
- PRIMARY KEY 主键约束,代表该值是唯一值,可以通过该列取出特定的行的数据