以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何让值显示为Null (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194218) |
-- 作者:zpsun2003 -- 发布时间:2024/11/20 11:23:00 -- 如何让值显示为Null 老师,我用这个代码: cmd.CommandText = "Insert Into 尺寸参数方案库 (序号,层级,参数名称,配置,尺寸名称,数值,备注) Values(\'" & xh2 & "\',\'" & cj3 & "\',\'" & .Rows(i)("参数名称") & "\' ,\'" & .Rows(i)("配置") & "\',\'"& .Rows(i)("尺寸名称") &"\',\'"& .Rows(i)("最终数值") &"\',\'"& th &"\')" 向数据库里写值,赋完值后,发现尺寸参数方案库这个表中“【配置】”本来有空的、有不空的,但这样赋值空的显示的不是(Null),后面查询空值时就没法用“[配置] is Null”。 怎么能赋值时空的就赋值为(Null)? |
-- 作者:linyunu -- 发布时间:2024/11/20 11:55:00 -- & IIf(.Rows(i)("配置")>"",.Rows(i)("配置"),Nothing) & 也可查询 "[配置]> \'\'"
|
-- 作者:有点蓝 -- 发布时间:2024/11/20 11:56:00 -- 方法1、改为参数化:http://www.foxtable.com/webhelp/topics/3266.htm (建议) 2、 cmd.CommandText = "Insert Into 尺寸参数方案库 (序号,层级,参数名称,配置,尺寸名称,数值,备注) Values(\'" & xh2 & "\',\'" & cj3 & "\',\'" & .Rows(i)("参数名称") & "\' ," & IIF(.Rows(i).isnull("配置"),"NULL","\'" & .Rows(i)("配置") & "\'") & ",\'"& .Rows(i)("尺寸名称") &"\',\'"& .Rows(i)("最终数值") &"\',\'"& th &"\')"
|
-- 作者:zpsun2003 -- 发布时间:2024/11/21 14:46:00 -- 老师,有2个问题: 1 改为参数化之后,赋空值的格式怎么写: \'With Tables("tb4_尺寸信息") \'For i As Integer = 0 To ccxxhs-1 \'xh2 = xh2+1 \'cj3 = cj4 & "." & i+1 \'cmd.CommandText = "Insert Into 尺寸参数方案库 (序号,层级,参数名称,配置,尺寸名称,数值,备注) Values(?,?,?,?,?,?,?)" \'cmd.Parameters.Add("@序号",xh2) \'cmd.Parameters.Add("@层级",cj3) \'cmd.Parameters.Add("@参数名称",iif(.Rows(i).Isnull("参数名称"),"Null",.Rows(i)("参数名称"))) \'cmd.Parameters.Add("@配置",iif(.Rows(i).Isnull("配置"),"Null",.Rows(i)("配置"))) \'cmd.Parameters.Add("@尺寸名称",iif(.Rows(i).Isnull("尺寸名称"),"Null",.Rows(i)("尺寸名称"))) \'cmd.Parameters.Add("@数值",iif(.Rows(i).Isnull("最终数值"),"Null",.Rows(i)("最终数值"))) \'cmd.Parameters.Add("@备注",th) \'cmd.ExecuteNonQuery \'Next \'End With 按照上面写,在单元格里赋值的就是NULL这4个字符。 2 按照上面改为参数化的方式后,能赋值第一行,第二行就报错: 调用的目标发生了异常。 已添加了具有相同键的项。 |
-- 作者:有点蓝 -- 发布时间:2024/11/21 15:03:00 -- …… cmd.CommandText = "Insert Into 尺寸参数方案库 (序号,层级,参数名称,配置,尺寸名称,数值,备注) Values(?,?,?,?,?,?,?)" cmd.Parameters.clear cmd.Parameters.Add("@序号",xh2) cmd.Parameters.Add("@层级",cj3) cmd.Parameters.Add("@参数名称",iif(.Rows(i).Isnull("参数名称"),nothing,.Rows(i)("参数名称"))) ……
|
-- 作者:zpsun2003 -- 发布时间:2024/11/21 16:40:00 -- 非常感谢老师,可以了 |