c# - 不需要时,更新语句中的SQL参数应该是什么

标签 c# sql sql-server-2005

正如问题所言,如果我不希望参数更新数据库,我应该将参数的值设置为什么?

例如

UPDATE table1
SET col1 = @someval ,
    col2 = @someotherval
WHERE col3 = 1;


如果在我的C#逻辑中,我决定不需要更新col2,因为传入的值为null,那么应该设置参数值以使其不更新该列吗?

我必须使用参数化查询,并且我不想编辑原始的更新语句。

最佳答案

如果col2无法更新为NULL,请尝试此操作

update table1 
set col1 = @someval , col2 = ISNULL(@someotherval, col2)
where col3 = 1;

关于c# - 不需要时,更新语句中的SQL参数应该是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1536882/

相关文章:

c# - 执行存储过程时,使用 CommandType.StoredProcedure 与使用 CommandType.Text 相比有什么好处?

sql - 是否可以生成动态 sql 以返回雪花中具有各种列的行

sql-server - SQL Server 数据类型等同于 Oracle?

c# - 枚举值的自定义名称

c# - CollectionAssert.AreEqual 失败。 (索引 0 处的元素不匹配。)

c# - 远程调试托管应用程序

sql - 在 JOIN 中使用 CONCAT 的方法

php - 如何输出正确的数据库行

sql - 将列默认值绑定(bind)到 SQL 2005 中的函数

sql-server - sp_help 中的FixedLenNullInSource 是什么意思?