空值null,而不是'',显示在sql的为<NULL>,相当于单元格内ctrl+0的效果
我用
UPDATE [2009-9-4-8]
SET Col003 = NULL
WHERE (Col002 = 'D/14528-1') AND (Col003 IS NULL)
弄出来,相当于Col003=''
我用
UPDATE [2009-9-4-8]
SET Col003 = NULL
WHERE (Col002 = 'D/14528-1') AND (Col003 IS NULL)
弄出来,相当于Col003=''
對的阿
SET Col003 = NULL
WHERE (Col002 = 'D/14528-1') AND (Col003 IS NULL) 后面来个(Col003 IS NULL) 这个条件是做什么的?本来就为NULL还改为NULL?
--> 测试数据:[tc]
if object_id('[tc]') is not null drop table [tc]
go
create table [tc]([ID] int,[Name] varchar(4))
insert [tc]
select 1,'张三' union all
select 2,'张三' union all
select 3,'张三' select * from tc
update tc set name=NULl
select * from tc/*
ID Name
----------- ----
1 张三
2 张三
3 张三(3 行受影响)(3 行受影响)ID Name
----------- ----
1 NULL
2 NULL
3 NULL(3 行受影响)
*/
SET Col003 = ''
WHERE (Col002 = 'D/14528-1') AND (Col003 IS NULL) 是不是这个意思?
CREATE TABLE mytesta
(
id INT,
test VARCHAR(16)
)
GOINSERT INTO mytesta
SELECT 1,NULL UNION ALL
SELECT 2,NULL UNION ALL
SELECT 3,NULL
UPDATE mytesta SET id=NULL WHERE id=1我测试也没问题
SET Col003 = NULL
WHERE (Col002 = 'D/14528-1')
AND (len(Col003)=0 or upper(col003)='NULL')
SET Col003 = NULL
查询条件的时候应该是 where colname is null 而不是where colname = null