如何更新 SQL Server 数据库的所有 varchar、nvarchar 或 char 字段,并在 NULL 的位



在我的数据库中有很多NULL值。现在我需要替换所有NULL值并将它们设置为空字符串,因为我现有的软件在NULL值方面存在问题。

我该怎么做?

尝试此更新:

update Table1
set column1 = ' '
where column1 is null

Hurraa

declare @query varchar(MAX)
SET @query='';
select @query=@query+' UPDATE '+table_name+' SET '+column_name+' = isnull('+column_name+','''');'
from (
    SELECT table_name=sysobjects.name,
             column_name=syscolumns.name
        FROM sysobjects 
        JOIN syscolumns ON sysobjects.id = syscolumns.id
        JOIN systypes ON syscolumns.xtype=systypes.xtype
       WHERE sysobjects.xtype='U' and (systypes.name='nvarchar' or systypes.name='varchar' or systypes.name='char')
) as a
exec (@query)

最新更新