mysql怎么update一个值为null?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql怎么update一个值为null?相关的知识,希望对你有一定的参考价值。

update tblname set 字段=null where condition; 直接用常量Null。

这个是有条件限制的。可以先select *from table_name查看一下表中想设置的那个列的属性是否设置了NOT NULL,如果设置了NOT NULL,那么是不能简单的修改为NULL的。必须先修改这个列的属性,alter table table_name set (列名) varchar(100) default null现在就是默认为空,如果查询出来是允许为空,直接update 表名 set 列名=null where 条件即可。

参考技术A

1.thx;
2.set 列=\\n。

mysql 是一个关系型数据库,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

mysql insert update delete

insert

insert [into] t [(col_name,...)] values(v1,v2...)

如果省略了列名,那么values里必须有所有列的值,自增列的值为null

如果指定了部分列名,其他的列必须允许为null或指定了默认值

 

连续插入

insert into table(name, address, zip)

values(‘zhangsan‘, ‘江苏‘, ‘222100‘),

(‘lisi‘, ‘上海‘, ‘220300‘);

 

插入select的结果

insert into customers(id,name,email) select uid,uname,uemail from custnew;

列名不需要相同,重要的是列的位置,将select的第k列插入到insert的第k列

 

降低插入语句的优先级,对update和delete同样适用

insert low priority into..

 

唯一索引,记录重复时可选择只更新指定字段,或者保留老记录,或者用新纪录整条替换老记录

只更新指定字段:on duplicate key update

insert into table(a,b)

select c,d from t

on duplicate key update b=values(a)+values(b) //values(b)是想插入的新记录里b的值

保留老记录:insert ignore into

替换老记录:replace into

 

update

update t set name=‘zhangsan‘, email = ‘sdf@qq.com‘ where id=1;

update a inner join b on a.id=b.uid set type = utype; 多表更新

update ignore t... 某行发生错误,其它行继续更新

update a, b set a.title=b.title, a.name=b.name where a.id=b.id 用另一个表的数据更新

 

delete

delete from t where id=1;

delete t1 from t1 left join (select ..) as t2 on t1.id=t2.id where t2.name=‘abc‘; 多表删除

如果想删除所有行,用truncate table语句更快,实际上是删除原来的表并新建一个表。

 

以上是关于mysql怎么update一个值为null?的主要内容,如果未能解决你的问题,请参考以下文章

mysql 触发器 if 语句update怎么操作?

mysql执行update语句让某个字段变成null该怎么办?

mysql insert update delete

mysql insert update delete

mysql 中怎么设置默认值为系统日期

数据库中怎么设置空字符串自动转换为null?