SQL – .NET – SqlParameters – AddWithValue – 未指定Param
发布时间:2020-12-12 07:09:05 所属栏目:MsSql教程 来源:网络整理
导读:http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlparametercollection.addwithvalue.aspx 我习惯使用add()函数将sql参数添加到sqlCommand.这允许我指定sqlParameter的类型,但它需要另一行来设置值. 使用AddWithValue函数很好,但它会跳过“
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlparametercollection.addwithvalue.aspx
我习惯使用add()函数将sql参数添加到sqlCommand.这允许我指定sqlParameter的类型,但它需要另一行来设置值. 使用AddWithValue函数很好,但它会跳过“指定参数类型”步骤. 我猜这会导致参数作为单引号(”)中包含的字符串发送,但我不确定. 是这种情况,这是否会导致存储过程的性能显着降低? 注意:我理解通过为params指定数据类型来验证.NET端的用户数据是很好的 – 我只关心.NET或SQL端的AddWithValue的反射类型开销. 解决方法类型推导发生在客户端.在SqlParameter里面,它基本上有一个位switch语句来确定你指定的值对应的SQL类型.因此发送到SQL Server的内容没有区别,但确定.NET类型对应的SQL类型的开销非常小.在宏观方案中,性能成本甚至不会显示为实际在数据库调用中花费的时间.在指定SQL类型时,您仍然可以在一行中执行此操作: cmd.Parameters.Add("@something",SqlDbType.NVarChar).Value = someString; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |