MySQL学习之SQL语法-概述、DDL和DML(2)

1.SQL概述

1.1.SQL是什么

SQL(Structured Query Language)是具有数据操纵和数据定义等多种功能的数据库语言。常用的标准有SQL92和SQL99,就是语法格式标准不同。

1.2.功能
  • 增加、删除、修改和查询数据
  • 创建数据库、表、存储过程和视图等
  • 设置表、存储过程和视图的权限
1.3.分类
  • DQL(Data Query Language):数据查询语言
  • DML(Data Manipulation Language):数据操纵语言
  • DDL(Data Definition Language):数据定义语言
  • TCL(Transaction Control Language):事务控制语言

2.DDL

2.1.CREATE创建

1.创建数据库:

CREATE DATABASE learn_mysql;
# 查询所有数据库
SHOW DATABASES;
# 使用哪一个数据库
USE learn_mysql;

执行结果:
在这里插入图片描述
2.创建表:

CREATE TABLE `t_employee`  (
  `id` int(11) NOT NULL COMMENT '员工id',
  `name` varchar(20) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL COMMENT '员工姓名',
  `department_id` int(11) NOT NULL COMMENT '部门id',
  `salary` decimal(10, 2) NOT NULL COMMENT '月薪',
  PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARACTER SET = utf8mb4;

t_employee是表名,id、name、department_id和salary是列名,其后是字段类型,PRIMARY KEY是主键,ENGINE = InnoDB是选择InnoDB为存储引擎,CHARACTER SET = utf8mb4设置字符编码为utf8mb4。

2.2.ALTER更新
ALTER TABLE t_employee ADD COLUMN phone_number varchar(11) COMMENT '员工手机号码';
# 格式
ALTER TABLE 表名 [ADD][DROP][MODIFY][CHANGE] COLUMN 列名 [类型] [约束]
2.3.DROP删除
# 删除数据库
DROP DATABASE learn_mysql;
# 删除表
DROP TABLE t_employee;
2.4.常见约束
  • NOT NULL:不能存储NULL
  • UNIQUE:每行的值必须唯一
  • PRIMARY KEY:NOT NULL和UNIQUE结合体,主键唯一标识
  • FOREIGN KEY:外键,保证该字段匹配另一个表中的值
  • DEFAULT:设置默认值

3.DML

3.1.INSERT插入数据
# 语法1
INSERT INTO 表名 (字段1, 字段2, ...) VALUES(1,2, ...)
INSERT INTO t_employee(`id`, `name`, `department_id`, `salary`, `phone_number`) VALUES(1, 'zhangsan', 1, 5000, 15833333333);
INSERT INTO t_employee(`id`, `name`, `department_id`, `salary`, `phone_number`) VALUES(2, 'lisi', 1, 6000, 15844444444);

# 语法2 如果不指定字段,VALUES需要写出所有字段值
INSERT INTO t_employee VALUES(3, 'wanger', 2, 7000, 15855555555);

执行结果:
在这里插入图片描述

3.2.UPDATE更新数据
# 语法
UPDATE 表名 SET 列名=, 列名=, ... [WHERE子句]
UPDATE t_employee SET salary = 7777 WHERE id = 3;

执行结果:
在这里插入图片描述

3.3.DELETE删除数据和TRUNCATE清空表
# DELETE语法
DELETE FROM 表名 [WHERE子句]
DELETE FROM t_employee WHERE id = 3;

执行结果:
在这里插入图片描述

# TRUNCATE语法
TRUNCATE 表名;
TRUNCATE t_employee;

执行结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值