mysql update多条_mysql中插入、更新与删除数据

插入数据是向表中插入新的记录。这种方式可以为表中增加新的数据。在mysql中,使用insert语句来插入新的数据,可以为表的所有字段插入数据,也可以为表的指定字段插入数据。insert语句可以同时插入多条记录,还可以将一个表中查询出来的数据插入到另一个表中。

插入数据

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

insert语句为表中插入数据的两种方式:第一种方式是不指定具体的字段;第二种方式是列出表的所有字段;

(1) insert语句中不指定具体的字段名

语法:insert into 表名 values(值1,值2…值n);

表名:参数指定记录插入到那个表中;值n:表示要插入的数据;值1~值n分别对应着表中的每个字段。表中定义了几个字段,insert语句中就应该对应有几个值。插入的顺序与表中字段的顺序相同。而且,取值的数据类型要与表中对应字段的数据类型一致。

示例:下面向product表中插入记录。插入记录之前,可以通过DESC语句来查看product表的基本结构。

DESC product;

d9eb3610e6ffe29dd3c8f7ef869232c5.png

insert into product values(1001,’ABC药物’,’治疗感冒’,’ABC制药厂’,’北京市昌平区’);

1efda455a05a42bb3fb977d3074f9a12.png
c9129c9b9bce4f32c01a136262ea4044.png

(2) insert语句中列出所有字段

insert语句中可以列出表的所有字段,为这些字段来插入数据。

语法:insert into 表名(属性1,属性2,…属性n) values (值1,值2,…值n);

属性n:表示表中的字段名称,此处需要列出表的所有字段的名称;

值n:表示每个字段的值,每个值与相应的字段对应。

示例:向product表中插入记录

insert into product(id,name,functions,company,address) values (1002,'BCD','治疗头痛','BCD制药厂','北京市海淀区');

e57c970d3427403404f84561d68631ff.png

为表的指定字段插入数据

语法:insert into 表名(属性1,属性2,…,属性m) values (值1,值2,…,值m);

8203c50da05782d1b356be7521aae3c3.png

insert into product (id,name,company) values (1003,’EF咳嗽灵’,’EF制药厂’);

3a637a2732eaaa180ee2aac8f087c870.png

注:没有赋值的字段,数据库系统会为其插入默认值。这个默认值是在创建表的时候定义的。

示例:下面向product表的id、name和company字段插入数据。

insert into product (id,company,name) values (1004,’北京制药厂’,’OK护嗓药’);

be9a60c24f55ca0a5ec090c1331c8eb8.png
fbbad7be4fa98d7856869e495f3d43f8.png

2、 同时插入多条记录

同时插入多条记录,是指一个insert语句插入多条记录。mysql中,一个insert语句可以同时插入多条记录。

语法:insert into 表名[(属性列表)] values (取值列表1),(取值列表2)…,(取值列表n);

表名:指明向那个表中插入数据;

属性列表:参数是可选参数,指定那些字段插入数据,没有指定字段时向所有字段插入数据;

取值列表n:表示要插入的记录,每条记录之间用逗号隔开;

示例:向product表中一次插入多条记录

insert into product values (1006,’头疼灵1号’,’治疗头痛’,’DD制药厂’,’北京市房山区’);

(1007,’头疼灵2号’,’ 治疗头痛’,’DD制药厂’,’北京市房山区’);

(1008,’头疼灵3号’,’ 治疗头痛’,’DD制药厂’,’北京市房山区’);

60df70ada857c64c75a6703067f01f4d.png
80ac01e4a12e2e74524a704782ca725b.png

示例2:下面向product表的id,name,company这三个字段插入数据。

insert into product (id,name,company) values

(1009,'护发1号','北京护发素厂'),

(1010,'护发2号','北京护发素厂'),

(1011,'护发3号','北京护发素厂');

529d91621d2974f5d656be67712d0ee5.png
e91e4b55442044b67b408855ae44e696.png

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

insert语句可以将一个表中查询出来的数据插入到另一个表中。这样可以方便不同的表之间进行数据交换。

语法:insert into 表名1 (属性列表1) select 属性列表2 from 表名2 where 条件表达式;

表名1:参数说明记录插入到那个表中;

表名2:参数说明表示记录是从那个表中查询出来的;

属性列表1:参数表示为那些字段赋值;

属性列表2:表示从表中查询出那些字段的数据;

条件表达式:参数设置了select语句的查询条件;

下面将medicine表中所有数据查询出来,然后插入到product表中。

select * from medicine;

10aa240de9bc1edb5f166f287b7ec48b.png

下面将medicine表中查询出来的数据插入到product表中。

insert into product (id,name,functions,company,address) select id,name,functions,company,address from medicine;

5991133b8e0513ec1d19ebb8b4195add.png

更新数据

更新数据是更新表中已经存在的记录。通过这种方式可以改变表中已经存在的数据。在mysql中用update语句修改表中的数据。

语法:update 表名 set 属性名1=取值1,属性名2=取值2,…,属性名n=取值n where 条件表达式;

属性名n:参数表示需要更新的字段的名称;

取值n:参数表示为字段更新的新数据;

条件表达式:参数指定更新满足条件的记录;

下面更新product表中id值为1001的记录。将name字段的值变为’AAAA感冒药’。将address字段的值为’北京市朝阳区’;

先查询product表中id为1001的记录。

select * from product where id=1001;

b7830760859da9cadb5239adf823309c.png

update product set name=’AAAA感冒药’,address=’北京市朝阳区’ where id=1001;

22315c4b3492abf034210514248bcf9f.png

下面将product表中id值为1001~1011的记录,将function字段的值变为’护理头发’。将address字段的值变为’北京市昌平区’。

先查询product表中值从1009~1011的记录。

select * from product where id>=1009 and id<=1011;

2308757adcfe7ff2c858f9c69556f1c4.png

update product set functions=’护理头发’,address=’北京市昌平区’ where id>=1009 and id<=1011;

f01a5915ca1de960a56002e80cc5e469.png

删除数据

删除数据是删除表中已经存在的记录。通过这种方式可以删除表中不使用的记录。通过delete语句来删除数据。

delete from 表名 [where 条件表达式];

表名:参数指明从那个表中删除数据;

where条件表达式:指定表中要删除的数据;

下面删除product表中id值为1001的记录。先查询一下product表中1001的记录。

select * from product where id=1001;

01e7e0f5345cc159d1d1e0642a10140d.png

delete from product where id=1001;

a8e601a670628eff672ec7a230b7178e.png
a94b33e988a67af0b6ee190b58285512.png
2a1eebd025d243ea520f67b9f88cd530.png
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值