SQL 语句 把一个值为0的字段改为空('null')

A表里a字段现在为0,想把0全改为空值updateAseta=''wherea='0'这样没有改变a的值... A表里a字段现在为0,想把0全改为空值

update A set a = '' where a = '0'
这样没有改变a的值 
展开
 我来答
千鸟05020305
2018-07-10 · TA获得超过1万个赞
知道答主
回答量:72
采纳率:0%
帮助的人:1.1万
展开全部

不能设为空值可能存在以下两个原因:

1.首先要判断a字段是否可以设为空值:
右键选择表,点击设计,查看字段允许null值是否打勾,打勾为可以设为空值。

2.还要检查字段的数据类型是否为字符型,int类的空值会被设置为0。
更改数据类型的语句为:
alter table 表名 alter column 列名 char(20) null.
两部都没问题后,在采用update A set a='null' where a='0'修改。


拓展资料:

结构化查询语言字符型
VARCHAR VS CHAR
VARCHAR型和CHAR型数据的这个差别是细微的,但是非常重要。他们都是用来储存字符串长度小于255的字符。
假如向一个长度为四十个字符的VARCHAR型字段中输入数据Bill Gates。以后从这个字段中取出此数据时,取出的数据其长度为十个字符——字符串Bill Gates的长度。假如把字符串输入一个长度为四十个字符的CHAR型字段中,那么当取出数据时,所取出的数据长度将是四十个字符。字符串的后面会被附加多余的空格。
使用VARCHAR型字段要比CHAR型字段方便的多。使用VARCHAR型字段时,不需要为剪掉数据中多余的空格而操心。
VARCHAR型字段的另一个突出的好处是它可以比CHAR型字段占用更少的内存和硬盘空间。当数据库很大时,这种内存和磁盘空间的节省会变得非常重要。

汝伊A2
2018-07-17 · TA获得超过1887个赞
知道答主
回答量:20
采纳率:50%
帮助的人:7564
展开全部

将原语句改为update A set a is null where a='0'后点击编译查看编译的结果,然后点击运行输出结果就行了。

拓展资料:

结构化查询语言简称SQL是一种特殊目的的编程语言,一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名


结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

1986年10月,美国国家标准协会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言、1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
残飞红
2021-12-31
知道答主
回答量:4
采纳率:100%
帮助的人:2766
展开全部
update A set a = null where a = 0;--这里a列时数值类的可以这么写
update A set a = null where a = '0';--这里a列时字符串类的可以这么写
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-24
展开全部
a=''表示将a设置为''字符串,并非null
写成a=null试试看!
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丿xcp
2017-04-19
知道答主
回答量:6
采纳率:0%
帮助的人:6435
展开全部
update A set a is null where a='0'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式