我有一个包含两列可能为空的表。
我想构建一个存储过程来编辑该表。在存储过程中我这样做了:
@ID INT,
@newBuildingName NVARCHAR(250),
@newLocation NVARCHAR(3000),
@newImage VARBINARY(MAX) = NULL,
@newNote NVARCHAR(3000) = NULL,
@result BIT OUTPUT
不是我不能在这一点上决定用户是否输入了newImage
或newNote
字段的值,所以我不能说
UPDATE myTable SET image = @newImage, note = @newNote
因为这两个字段可能已经有值,这样我会删除这些值,
我该怎么办?
我要做的就是
做一个if-else
声明并尝试第一个字段是否为空,所以我的更新没有它,然后如果我的第二个字段为空,那么我的更新语句没有它,如果它们都不是空的,那么做一个完整的更新声明但是我认为这是一个非常乏味的过程。
请问还有其他解决方案吗?
提前致谢