SqlParameter中的new SqlParameter("e",0)的陷阱坑,你知道?

new SqlParameter("e",0)的陷阱

有两个重载函数

public SqlParameter(string parameterName, object value);

public SqlParameter(string parameterName, SqlDbType dbType);

SqlDbType中有一个常量BigInt = 0,当传入参数0时,它会把它看成一个SqlDbType,

因此运行程序会报错,提示没有提供参数,

解决办法:

1、可以使用数据转型来操作

         new SqlParameter("e",(object)0)

2、可以通过参数的方式来解决

直接MSDN:http://msdn.microsoft.com/zh-cn/library/0881fz2y(VS.80).aspx

(41条消息)new SqlParameter(e,0)的陷阱_米刀文-CSDN博客_new sqlparameter( 

https://blog.csdn.net/henulwj/article/details/7772710

SqlParameter参数类型为int32时候的传值陷阱 - 自由的鱼 - 博客园 

https://www.cnblogs.com/coce/p/6706426.html

SqlParameter设定value为0却变成null - 无忧岛主 - 博客园 

https://www.cnblogs.com/sunxi/p/5332387.html

原文地址:https://www.cnblogs.com/51net/p/13457634.html