一步一步学MySQL----7 插入、更新、删除数据

来源:互联网 发布:飞云淘宝客机器人神器 编辑:程序博客网 时间:2024/04/29 07:11

7.1 插入完整数据记录

语法:

insert into table_name(field1,field2,field3,……)values(value1,value2,value3,……);

例如:

我们先创建一张user表,如下:

mysql> create table user(
-> id int,
-> name varchar(20),
-> address varchar(60)
-> );

Query OK, 0 rows affected (0.17 sec)

这里写图片描述

接着,向user表中插入一条记录如下:

mysql> insert into user(id,name,address) values(1,’kkdd’,’shanghai’);

Query OK, 1 row affected (0.16 sec)

为了验证这条记录师傅插入成功,执行下面的查询语句:

mysql> select * from user;

这里写图片描述

我们也可以在SQLyog中查看user表是否有我们刚刚插入的数据,如下:

这里写图片描述

另外,当我们插入完整数据记录时,也可以采用省略字段的方式:

语法:

insert into table_name values(value1,value2,value3,……);

7.2 插入数据记录一部分

语法:

insert into table_name(field1,field2,field3,……) values(value1,value2,value3,……)

我们先创建一张student表,如下:

mysql>create table student(
-> id int >primary key auto_increment,
-> name varchar(20),
-> address varchar(60)
-> );

Query OK, 0 rows affected (0.07 sec)
这里写图片描述

接着我们先插入一条完整记录(以作对比)

mysql>insert into student(id, name, address) values(1,’Davaid’,’shanghai’);

Query OK, 1 row affected (0.14 sec)

然后插入一条部分记录

mysql> insert into student(id, name) values(2,’Dandan’);

Query OK, 1 row affected (0.10 sec)

再插入一条部分记录

mysql> insert into student(name, address) values(‘Qingqing’, ‘beijing’);

Query OK, 1 row affected (0.15 sec)

最后,执行查询语句:

mysql> select * from student;

这里写图片描述

注意:这里我们发现一个问题,当我们插入第二个部分记录时,插入语句中并没有插入字段id,但是我们看到表里自动加上了字段id,这是由于字段id是“自动增加”约束的原因

7.3 插入多条数据记录

语法:

insert into table_name(field1,field2,field3,……) values(value11,value12,value13,……),
(value21,value22,value23,……),(value31,value32,value33,……), … …(valuen1,valuen2,valuen3,……);

7.4 插入查询结果

语法:

insert into table_name1(field11,field12,field13,……) select (field21,field22,field23,……) from table_name2 where……;

目的:将一张表中的查询记录插入另一张表

例如:

我们已经有了一张student表,如下:
这里写图片描述

这里,我们再新建一张student2表,如下:
这里写图片描述

我们看到,新建的student2表中没有数据记录

此时,我们将student表中的所有记录插到student2表中,如下:

mysql> insert into student2(id, name, address) select * from student;

Query OK, 3 rows affected (0.09 sec)
Records: 3 Duplicates: 0 Warnings: 0

结果如下:
这里写图片描述

7.5 更新特定数据记录

语法:

update table_name set field1=value1, field2=value2, field3=value3, … where condition;

例如:

现有student表如下:
这里写图片描述

接着,我们修改一下姓名为Qingqing的学生的地址,由beijing变为江苏,如下:

mysql> update student set address=”jiangsu” where name=”Qingqing”;

Query OK, 1 row affected (0.15 sec)
Rows matched: 1 Changed: 1 Warnings: 0

我们来验证一下,是否修改正确
这里写图片描述

7.6 更新所有数据记录

语法:

update table_name set field1=value1, field2=value2, field3=value3, … where condition;

例如:

现有student表如下:
这里写图片描述

接着,我们将所有学生的地址都改为tianjin,如下:

mysql> update student set address=”tianjin” where id<4;

Query OK, 3 rows affected (0.11 sec)
Rows matched: 3 Changed: 3 Warnings: 0

我们来验证一下,是否修改正确:
这里写图片描述

7.7 删除特定数据记录

语法:
delete from table_name where condition;

例如:

现有student表如下:
这里写图片描述

现想要删除姓名为Davaid的数据信息,如下:

mysql> delete from student where name=”Davaid”;

Query OK, 1 row affected (0.07 sec)

我们来验证一下,是否已删除,如下:
这里写图片描述

7.8 删除所有数据记录

语法:

delete from table_name where condition;

例如:

现有student表如下:
这里写图片描述

现想要删除表中的所有记录,如下:

mysql> delete from student where id<4;

Query OK, 2 rows affected (0.06 sec)

我们来验证一下,是否已删除,如下:

mysql> select * from student;

Empty set (0.00 sec)

0 0
原创粉丝点击