MySQL:DML操作 表中数据

SQL中的DML:

  用于对表中的数据, 进行增删改 操作 

 

1.  插入数据

语法格式:

insert into 表名 (字段名1,字段名2...) values (字段值1,字段值2...);

1)代码准备,创建一个学生表:

表名:student 
表中字段:
    学生ID: sid int
    姓名: sname varchar(20)
    年龄: age int
    性别: sex char(1)
    地址:address varchar(40)

#创建学生表
CREATE TABLE student (
    sid INT,
    sname VARCHAR(20),
    age INT.
    sex CHAR(1),
    address VARCHAR(40)
);

 

2)  向学生表中添加数据,3种方式

 

方式1: 插入全部字段,将所有字段名都写出来  

INSERT INTO student (sid,sname,age,sex,address) VALUES(1,'孙悟空',20,'','花果
山');

 

方式2: 插入全部字段,不写字段名

INSERT INTO student VALUES(2,'孙悟饭',10,'','地球');

 

方式3:插入指定字段的值

INSERT INTO category (cname) VALUES('白骨精');

 

注意: 1) 值与字段必须要对应,个数相同&数据类型相同

       2)值的数据大小,必须在字段指定的长度范围内

    3)varchar char date类型的值必须使用单引号,或者双引号 包裹。

            4)如果要插入空值,可以忽略不写,或者插入null

            5) 如果插入指定字段的值,必须要上写列名 

 

2.  更改数据

语法格式1:不带条件的修改

update 表名 set 列名 =

语法格式2:带条件的修改

update 表名 set 列名 =[where 条件表达式:字段名 = 值 ]

 

1)不带条件修改,将所有的性别改为女(慎用!!)

UPDATE student SET sex = '';

2)带条件的修改,将sid 为3的学生,性别改为男

UPDATE student SET sex = '' WHERE sid = 3;

3)一次修改多个列, 将sid为 2 的学员,年龄改为 20,地址改为 北京

UPDATE student SET age = 20,address = '北京' WHERE sid = 2;

 

3   删除数据

语法格式1:删除所有数据

delete from 表名

语法格式2: 指定条件 删除数据

delete from 表名 [where 字段名 = 值]

1)删除 sid 为 1 的数据

DELETE FROM student WHERE sid = 1;

2)  删除所有数据

DELETE FROM student;

3) 如果要删除表中的所有数据,有两种做法

  1. delete from 表名; 不推荐. (删除原理:有多少条记录 就执行多少次删除操作. )效率低

  2. truncate table 表名: 推荐. (删除原理:先删除整张表, 然后再重新创建一张一模一样的表.) 效率高

truncate table student;

 

posted @ 2021-07-11 19:12  Jasper2003  阅读(52)  评论(0编辑  收藏  举报