参数化查询‘(@UserName nvarchar(10),@NickName nvarchra(50)’ 需要参数 @NickName,但未提供该参数

在尝试向数据库表添加数据时,如果遇到因为空值引发的错误,可以采取两种方法进行处理。方法一是在实体类赋值时使用三目运算确保空值被转换为空字符串。方法二是在数据访问层(DAL)中,循环遍历SqlParameter数组,将空值替换为DBNull.Value。这两种方法都能有效避免因为空值导致的参数化查询失败。
摘要由CSDN通过智能技术生成

我们往数据库表中添加一行数据的时候,数据库允许某一列为空,但是实际案例操作添加的时候,会遇到一些问题,比如下图。这样,我们就需要做一些处理。

这个两种修改方式

第一种:

在方法体中,实体类赋值时修改。用三目运算。

 UserInfo userInfo = new UserInfo();

userInfo.NickName = string.IsNullOrEmpty(register.txtNickName) == true ? "" : register.txtNickName.ToLower().Trim();

第二种:

在DAL(数据链路层),

 SqlParameter[] pars = { 
                                    new SqlParameter("@UserName",userInfo.UserName),
                                    new SqlParameter("@NickName",userInfo.NickName),
                                    new SqlParameter("@Password",userInfo.Password.),
                                    new SqlParameter("@Mail",userInfo.Mail),
                   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值