最近我注意到我公司的应用程序使用AddWithValue将参数值传递给动态的参数化查询。例子:
cmd.Parameters.AddWithValue("@VehicleId", Vehicles.VehicleId);
Run Code Online (Sandbox Code Playgroud)
在数据库中,该数据类型VehicleID是INT。
据我了解,由于 AddWithValue(已弃用)未指定数据类型/长度,因此此“@VehicleID”被转换并可能被错误转换。在“INT”的情况下,该转换是否会影响 SQL Server 性能?
这会导致计划缓存污染之外的问题吗?转换是否会导致性能下降?