求解释一条SQL语句,关于空值和NULL的转换!!!

代码小虾米 2012-06-17 06:22:58
INSETR INTO PUZZLE(CLUE1) VALUES (clue1==""?(null):(clue1))


是如果clue1为空,就当做null,插入数据库,如果不为空,那就是原来的值插入数据库

但是我试了,还是空值插入了数据库,不会显示NULL

我是在winform中写的这条命令,如果我想实现上面说的,应该怎么改呢???
...全文
842 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
odp_denden 2012-06-29
  • 打赏
  • 举报
回复
同意3楼。。。。
xiaojiaoduo 2012-06-28
  • 打赏
  • 举报
回复
declare @clue1 varchar(1)
insert into puzziw(clue1)
select case when @clue1='' then null else @clue1 end


不知道是几楼的楼主写的!不过值得我学习下!呵呵……谢谢!!
tengjian1981 2012-06-28
  • 打赏
  • 举报
回复
你是不是将数据库字段设置为非空,然后设置默认值为''
sunvfish 2012-06-26
  • 打赏
  • 举报
回复
case when 语句
或者直接用一个if语句处理
PUPPY002 2012-06-26
  • 打赏
  • 举报
回复
用NULLIF
INSETR INTO PUZZLE(CLUE1) VALUES (NULLIF(clue1,''))
ZXY900213 2012-06-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

引用 1 楼 的回复:

C# code

//如果你的CLUE1是字符型
string insSql="INSETR INTO PUZZLE(CLUE1) VALUES ("+clue1==""?"null":"'"+clue1+"')";


但是这样插入的null是字符null 并不是系统表示空的那个null吧 而且我的clue1限制长度为1了。
[/Quote]

这个并不是是字符null,如果字符null的话需要再加个单引号。
gogodiy 2012-06-18
  • 打赏
  • 举报
回复
要用2楼叶子的方法,不能用ISNULL。
houyajin 2012-06-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

SQL code

declare @clue1 varchar(1)
insert into puzziw(clue1)
select case when @clue1='' then null else @clue1 end
[/Quote]

+
Lyongt 2012-06-18
  • 打赏
  • 举报
回复
InSert Into Puzzle(Clue1)
Select Case When ISNULL(clue1,'') = '' then Null Else clue1 End From 表
叶子 2012-06-18
  • 打赏
  • 举报
回复

declare @clue1 varchar(1)
insert into puzziw(clue1)
select case when @clue1='' then null else @clue1 end
代码小虾米 2012-06-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

C# code

//如果你的CLUE1是字符型
string insSql="INSETR INTO PUZZLE(CLUE1) VALUES ("+clue1==""?"null":"'"+clue1+"')";
[/Quote]

但是这样插入的null是字符null 并不是系统表示空的那个null吧 而且我的clue1限制长度为1了。
人生无悔 2012-06-17
  • 打赏
  • 举报
回复

//如果你的CLUE1是字符型
string insSql="INSETR INTO PUZZLE(CLUE1) VALUES ("+clue1==""?"null":"'"+clue1+"')";

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧