感谢您对此的评论
我很容易解决,我知道它会由你解决
我有一个有 14 列的表格,其中 8 列是数字(int、biging、numeric(18,0))和其他 cols 数据类型为文本值,例如 char(10)、varchar(255)、Nvarchar(4000) 这个表由相同的随机值填充,并且在所有列(ID 除外)中都有很多空值。
我想制作一个或多个存储过程,将数字列中的所有空单元格填充为 0 和字符串列中的所有 null 都为"无值"。
如果这个SP将返回所有列中所有空值的计数,那就太神奇了
非常感谢
您可以使用存储中的循环过程,但最好的方法是检查所有列的空值,因为任何列可能具有各种数据类型。
我希望这是有帮助的.
Update Table1
set col1='0'
where co1 is null
等等...
您可以如上所述进行更新,但是如果您需要将默认字段设置为 0,那么您应该在创建表时使用默认值
CREATE TABLE dbo.Something
(
id INT IDENTITY(1, 1),
col1 INT DEFAULT 0
)
但是,如果它的遗留代码比在插入过程中使用,你可以像
CREATE PROCEDURE [dbo].[spa_CRUDSomething]
@flag CHAR(1)
, @col1 INT = 0
AS
通常问题不在于进行修复,而在于修复修复