INSERT语句的问题,如何给一个列赋予NULL值啊?

nickypan 2005-03-25 01:58:21
insert into EDU_USER (DEPT_ID) values (@DEPT_ID)。

以上语句,我想根据条件赋予DEPT_ID一个固定值或者是NULL值,但如何赋予NULL值啊?如果直接赋予@DEPT_ID=NULL好像不行啊,DEPT_ID在数据库中的default值可以是NULL的。
...全文
239 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
nickypan 2005-03-25
  • 打赏
  • 举报
回复
up
fanny_20 2005-03-25
  • 打赏
  • 举报
回复
不明白asp是怎么回事
是不是POSITION_ID1有问题。
nickypan 2005-03-25
  • 打赏
  • 举报
回复
各位,其实我的情况是这样的:我在asp.net的C#页面中执行一条这样的语句:

String addCmd = "insert into EDU_USER (DEPT_ID, POSITION_ID1) values @DEPT_ID, @POSITION_ID1)";

SqlCommand addCommand = new SqlCommand(addCmd, dbConnection);

addCommand.Parameters.Add(new SqlParameter("@DEPT_ID", SqlDbType.Int, 4));
addCommand.Parameters.Add(new SqlParameter("@POSITION_ID1", SqlDbType.Int, 4));

addCommand.Parameters[0].Value = 部门ID的值;
addCommand.Parameters[1].Value = 岗位ID的值;

在这里我想给addCommand.Parameters[0].Value一个null值,可是不行啊!
系统返回说“需要参数 @DEPT_ID,但未提供该参数”。
我需要根据一些条件来给它一个具体的部门ID,或者是一个null值,但是如何把null值放进去呢?
yizhixiaozhu 2005-03-25
  • 打赏
  • 举报
回复
IIF
NewQger 2005-03-25
  • 打赏
  • 举报
回复
insert into EDU_USER (DEPT_ID) values (case when 条件 then @DEPT_ID else null end)。
talantlee 2005-03-25
  • 打赏
  • 举报
回复
insert into EDU_USER (DEPT_ID) values (@DEPT_ID)
假如,你的其他字段不允許null(not allow null)他會出錯
你用update來試一下
hyunphone 2005-03-25
  • 打赏
  • 举报
回复
同意 steedhorse(晨星)
晨星 2005-03-25
  • 打赏
  • 举报
回复
DbNull位于System.Data名字空间中,别忘了using。
晨星 2005-03-25
  • 打赏
  • 举报
回复
addCommand.Parameters[0].Value = DbNull.Value;
zjcxc 2005-03-25
  • 打赏
  • 举报
回复
--可以的
set @DEPT_ID=null
insert into EDU_USER (DEPT_ID) values (@DEPT_ID)
zjcxc 2005-03-25
  • 打赏
  • 举报
回复
这个不应该是sql的问题,应该是ado对象的问题,估计它是根据参数值是否为null来判断是否给参数赋值

如果写成存储过程的话,这个好处理(将存储过程的参数默认值设置为null就行了),这样直接写就不知道该如何做了
lin_now 2005-03-25
  • 打赏
  • 举报
回复
应该可以的!~

110,532

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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