MySQL中数据表如何实现数据插入、更新、删除操作

60次阅读
没有评论

共计 2751 个字符,预计需要花费 7 分钟才能阅读完成。

丸趣 TV 小编给大家分享一下 MySQL 中数据表如何实现数据插入、更新、删除操作,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

一、插入数据

格式:INSERT INTO 表名 (字段名 …)VALUES(值 …);

创建环境

使用 person 表

CREATE TABLE person

(

id INT UNSIGNED NOT NULL AUTO_INCREMENT,

name CHAR(40) NOT NULL DEFAULT ,

age INT NOT NULL DEFAULT 0,

info CHAR(50) NULL,

PRIMARY KEY(id)

);

1.1、为表的所有字段插入数据

方式一:INSERT INTO person(id,name,age,info) VALUES(1, Green ,21, Lawyer

方式二:INSERT INTO person VALUES(2, aaa ,18, MAN

方式三:INSERT INTO person (name,id,age,info) VALUES(bbb ,3,17, haha

总结:

方式一和方式三说明插入数据时可以不用按照表结构中的顺序来,只要给的值与前面字段名一一对应即可,

方式二表明可以忽略字段名,但是其值必须跟表结构中的字段顺序一样。

使用这三种方式去为所有字段插入数据都可以。

1.2、为表的指定字段插入数据

在有时候,给表中插入记录行时,字段值不一定要全部都需要手动插入,可能 id 自动增长的,也有时某个字段使用默认值,不用插入值也行,这时候就需要为表指定字段来插入数据了。

INSERT INTO person(name,age,info) VALUES(Willam ,20, sports man

这里就缺少了 id 字段,但是 id 字段是 AUTO_INCREMENT,不用我们手动插入值

1.3、同时插入多条记录

格式:INSERT INTO 表名(字段名)VALUES(记录行值 1),(记录行值 2),…;

解释:也就是相当于一条语句插入多条记录,就不用每次只插入一条数据了

INSERT INTO person(name,age,info) VALUES(qqq ,19, haha),(eee ,14, heihei // 插入两条数据。

同时插入多条记录时,会出现三个名词 Records:表明插入的记录条数 Duplicates: 表名插入时被忽略的记录,原因可能是这些记录包含了重复的主键值 Warnings: 表明有问题的数据值,例如发生数据类型转换。上面提示的是 2 个 Records,确实是插入了两条记录数

1.4、将查询结果插入到表中

在有的时候,可能需要将一张表中的数据搬到另一张表中,但是一条条输入记录,很慢,所以就有了这个将查询结果插入到表中,也就是说,将一张表中查询到的结果,全部一次性插入到另一张表中,这样就很方便了,但是也有前提条件,那就是查询的结果的字段个数和插入到目标表的字段个数是一样的,并且数据类型也要相同。具体下下面这个例子。

上面一张 person 表不够用,现在在创建一张表。

CREATE TABLE person_old

(

id INT UNSIGNED NOT NULL AUTO_INCREMENT,

name CHAR(40) NOT NULL DEFAULT ,

age INT NOT NULL DEFAULT 0,

info CHAR(50) NULL,

PRIMARY KEY(id)

);

增加两条记录

INSERT INTO person_id VALUES(11, Harry ,20, studeng),(12, Beck ,18, polic

现在将 person_old 表中的所有数据转移到 person 表中。

INSERT INTO person(id,name,age,info) SELECT id,name,age,info FROM person_old;

这样看一下,id 中间就好像断了一块,其实可以不用添加 id 字段,只添加后面三个字段的值

INSERT INTO person(name,age,info) SELECT name,age,info FROM person_old;

不指定 id,那么就会按照 person 表中 id 的规则,AUTO_INCREMENT, 这里说明一下 AUTO_INCREMENT 的原理,先检查表中最大的 id 值,然后往上面加 1,每次做就会先检测最大的 id 值是多少。

二、更新数据

格式:UPDATE 表名 SET 字段名 = 值, 字段名 = 值 … WHERE 条件;

解释:通过条件找到要更新数据的那一行记录,然后通过 SET 字段名 = 值这样的形式,写出要更改哪个字段,并更改为什么值。

UPDATE person SET name = xxx WHERE name= aaa // 将 person 表中 name=aaa 的记录行更新为 name=xxx。

解释:原本第二行的记录 name=aaa。现在改为了 xxx。可以同时改好多个值,不一定就只更改名字。主键 id 也能更改,只要主键不冲突,随便改成什么值

UPDATE person SET id = 7 WHERE id = 14; // 将 id=14 的记录行的 id 改为 7

三、删除数据

格式:DELETE FROM 表名 [WHERE condition

解释:条件如果没有的话,那么就把表中所有数据度给删除了。如果有条件的话,就将符合条件的记录行删除。

DELETE FROM person WHERE id = 13; // 将 person 表中 id=13 的记录行给删除。

MySQL 中数据表如何实现数据插入、更新、删除操作

DELETE FROM person; // 将 person 表中所有数据度删除

MySQL 中数据表如何实现数据插入、更新、删除操作

四、综合案例

下面这个例题想做的人可以做一下,环境已经教大家搭建好了,这些由于比较简单,我就不在这里一一解答了。

4.1、创建实验环境

创建 books 表

CREATE TABLE books

(

id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,

name VARCHAR(40) NOT NULL,

author VARCHAR(200) NOT NULL,

PRICE INT(11) NOT NULL,

pubdate YEAR NOT NULL,

note VARCHAR(255) NULL,

num INT NOT NULL DEFAULT 0

);

MySQL 中数据表如何实现数据插入、更新、删除操作

4.2、将下表中的路基插入 books 表中,分别使用不同的方法插入记录。

MySQL 中数据表如何实现数据插入、更新、删除操作

4.2.1、指定所有字段名称插入记录

4.2.2、不指定字段名称插入记录

4.2.3、同时插入多条记录

4.3、将小说类型 novel 的书的价格度增加 5

4.4、将名称为赵六的书的价格改为 40,并将库存量 num 改为 26

4.7、删除库存为 5 的记录

以上是“MySQL 中数据表如何实现数据插入、更新、删除操作”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计2751字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)