(4-1)MySQL 记录的插入更新与删除

目录

1 INSERT(插入记录)

1.1 insert-values

1.2 insert-set

1.3 insert-select 

2 UPDATE(单表更新)

3 DELETE(单表删除)

4 参考


1 INSERT(插入记录)

1.1 insert-values

语法结构:

    INSERT [INTO] tbl_name [(col_name,...)] {VALUES | VALUE} ({expr | DEFAULT},...),(...),...

例子:在表users中插入记录,表的结构如下:

users表结构

插入记录:

INSERT users VALUES(NULL,'Tom','123',25,1);    //id设置为NULL

INSERT users VALUES(DEFAULT,'John','123',20,0);    //id设置为DEFAULT

INSERT users VALUES(DEFAULT,'Mary','123',3*7+2,0);   //age使用表达式进行赋值

INSERT users VALUES(DEFAULT,'Kay','123',DEFAULT,0);    //age默认约束设置为DEFAULT

INSERT users VALUES(DEFAULT,'Wang','456',22,1),(NULL,'Will',md5('123'),32,1);    //插入多条记录,用英文的逗号隔开

注意:

①若省略列名,所有的字段都要赋值。

②id是自动编号的字段,若省略col_name,这id可赋值为NUUL,或DEFAULT。

插入记录

1.2 insert-set

语法结构:

    INSERT [INTO] tbl_name SET col_name={expr | DEFAILT},...

与方法一的区别:

    ①该方法可以使用子查询(SubQuery)

    ②该方法1次只能插入1条记录。

例子:INSERT users SET username='in_set',password='333'; 

insert-set方法插入记录

1.3 insert-select 

语法结构:

INSERT [INTO] tbl_name [(col_name,...)] SELECT ...

区别:此方法可以将查询结果插入到指定的数据表中。

例子:(1)首先创建一个表(test1)

CREATE TABLE test1(
id TINYINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(20)
);

(2)将users表中年龄大于30的记录插入test1 中(如下表所示记录)

 (3)添加代码:

INSERT test1(username) SELECT username FROM users WHERE age>=30;

结果如下:

INSERT—SELECT

2 UPDATE(单表更新)

当输入的字段有误,或者想更改字段值,则可以使用UPDATE更新字段

语法结构:

UPDATE [LOW_PRIORITY] [IGNORE] table_reference SET col_name1={expr1 | DEFAULT} [,col_name2={expr2 | DEFAULT}]...

[WHERE where_condition]

例1:令age=age+10(不加WHERE条件 所有记录将被更新)

      UPDATE users SET age = age+10;

更新前
更新后

例2:令 age=age-id,并且令sex=0(不加WHERE条件 所有记录将被更新)

        UPDATE users SET age=age-id,sex=0;

修改后(age=age-id,sex=0)

例三:加WHERE条件,令所有id为偶数的记录,age=age+100;

筛选记录(加WHERE条件)

3 DELETE(单表删除)

语法结构:

    DELETE FROM tbl_name [WHERE where_condition]

注意:若省略WHERE条件语句将删除表中的全部记录。

例子:删除id为某一值的记录。

    DELETE FROM users WHERE id=6;

删除单条记录

4 参考

慕课网——初识MySQL 记录的增删改 

猜你喜欢

转载自blog.csdn.net/qq_29406323/article/details/86589951
4-1
今日推荐