《SQL与数据库基础》03. SQL-DML


本文以 MySQL 为例

DML

数据插入

给指定字段添加数据
INSERT INTO 表(字段1, 字段2, ......, 字段n) VALUES(值1, 值2, ......, 值n);

给全部字段添加数据
INSERT INTO 表 VALUES(值1, 值2, ......);

批量添加数据
1、INSERT INTO 表(字段1, 字段2, ......, 字段n) VALUES(值1, 值2, ......, 值n), (值1, 值2, ......, 值n), ......, (值1, 值2, ......, 值n);
2、INSERT INTO 表 VALUES(值1, 值2, ......), (值1, 值2, ......), ......, (值1, 值2, ......);

注:
插入数据时,值的顺序要与指定的字段顺序一一对应。
字符串和日期型数据应该包含在引号中。
插入的数据大小要在字段的指定范围内。

示例:

CREATE TABLE student(
	id INT,
	name VARCHAR(20),
	age INT
);

# 仅插入id列数据
INSERT INTO student(id) VALUES(10001), (10002);

# 插入全部列数据
INSERT INTO student(id, name, age) VALUES(10001, '周杰轮', 31), (10002, '王力鸿', 33), (10003, '林俊节', 26);

# 插入全部列数据,快捷写法
INSERT INTO student VALUES(10001, '周杰轮', 31), (10002, '王力鸿', 33), (10003, '林俊节', 26);

数据删除

基础语法
DELETE FROM 表名称 [WHERE 条件判断];

注:
DELETE语句不能删除某一个字段的值(可以使用UPDATE置为null)

示例:

CREATE TABLE student(
	id INT,
	name VARCHAR(20),
	age INT
);

INSERT INTO student 
VALUES(10001, '周杰轮', 31), 
      (10002, '王力鸿', 33), 
      (10003, '林俊节', 26), 
      (10004, '张学油', 26), 
      (10005, '刘德滑', 40);

# 删除name为林俊节的数据
DELETE FROM student WHERE name = '林俊节';

# 删除age > 33 的数据
DELETE FROM student WHERE age > 33;

# 删除全部数据
DELETE FROM student;

数据更新

基础语法
UPDATE 表名 SET 字段1=值1, 字段2=值2, ......, 字段n=值n [WHERE 条件];

示例:

CREATE TABLE student(
	id INT,
	name VARCHAR(20),
	age INT
);

INSERT INTO student 
VALUES(10001, '周杰轮', 31), 
      (10002, '王力鸿', 33), 
      (10003, '林俊节', 26), 
      (10004, '张学油', 26), 
      (10005, '刘德滑', 40);

# 修改id为10001的name为陈一讯
UPDATE student SET name = '陈一讯' WHERE id = 10001;

# 修改全部数据的age为11
UPDATE student SET age = 11;
posted @ 2023-01-14 22:17  镜坛主  阅读(12)  评论(0编辑  收藏  举报