MySQL数据库之数据的相关插入,更新,删除操作等以及常见的报错分析解决

1. 插入数据(insert

1.1 insert关键字

1.1.1 为所有字段插入单条数据

不写字段名,只写要插入的字段值

insert into table_name value(value1,value2);

但字段值的顺序和表的顺序要求位置,数据类型,个数保持一致

写字段名也写字段值

insert into table_name(column_name1,column_name2) values(value1,value2);

字段名可调整顺序,只要字段值与语句中的字段名保持一致即可

1.1.2 为指定字段插入单条数据

insert into table_name(column_name1,column_name3) values(value1,value3);

1.1.3 为所有字段插入多条数据

insert into table_name(column_name1,column_name2,column_name3) values(value1,value2,value3),(value4,value5,value6);

1.1.4 为指定字段插入多条数据

insert into table_name(column_name1,column_name3) values(value1,value3),(value4,value6);

报错总结:

sql "Field ‘xxx’ doesn`t have a default value" -- 说明你xxx字段设置了非空约束,而没有设置默认值,所以写入一个值即可

1.2 set关键字

1.2.1 为所有字段插入

insert into table_name set column_name1=value1,column_name2=value2,column_name3=value3;

1.2.2 为指定字段插入

insert into table_name set column_name1=value1,column_name3=value3;

2.更新数据(update

2.1 更新所有记录

update table-name set column-value =value1;

这样会把所有表中该字段的值都变成一样的

2.2 更新指定记录

update table_name set column-name1=value2 where column-name1=value1;
update 表名 set 字段名=新字段值 where 字段名=旧字段值

where关键字后面的内容是指定原本字段名的值

3.删除数据

3.1 delete关键字

3.1.1 删除指定数据

delete from table_name where where_condition;
delete from 表名 where 条件;

3.1.2 删除所有数据

delete from table_name;

3.2 truncate关键字

3.2.1 删除所有数据

truncate table_name;

两者区别

在这里插入图片描述

代码合集

create table lxb(
	id int,
	name varchar(10),
	age int,
	love varchar(20)
) ;

-- 插入数据
insert into lxb value(1,'lgh',12,'吃饭');  											     -- 不写字段名 
insert into lxb(id,name,age,love) values(1,'hgl',11,'喝水');         --  写字段名和字段值
insert into lxb(id,age) values(1,24);      												   -- 插入指定字段
insert into lxb set id=2,name='ghl',age=12,love='吃饭饭';            -- set关键字为所有字段插入
insert into lxb set id=2,name='ggg';        										     -- set关键字为指定字段插入
insert into lxb(id,name,age,love) values(1,'hhh',33,'啦啦啦'),(2,'lll',33,'哈哈哈');   -- 为所有字段插入多条数据
insert into lxb(id,name,age) values(1,'hhh',33),(2,'ghgh',35);   -- 为指定字段插入多条数据

-- 更新数据
update lxb set name='hhhhh' where name='ghl';        -- 更新指定记录
update lxb set name='hhhhh' ;           -- 更新所有记录


-- 删除记录
delete from lxb where name='ggg';       -- 删除指定数据
DELETE from lxb;             -- 删除所有数据

更多精彩内容点击这里
下一节我会专门写数据查询,敬请期待

猜你喜欢

转载自blog.csdn.net/weixin_51992868/article/details/124270991