DB に、現在 として定義されている列がありますNOT NULL
。を許可するようにこの列を更新したいと思いますNULLs
。
これを行うには次のスクリプトがありますが、以前に変更されている可能性があるため、列が既にNULL
(または) であるかどうかを最初に確認したいと思います。NOT NULL
ALTER TABLE [dbo].[aud]
ALTER COLUMN [actname] nvarchar(50) NULL
どんな助けでも感謝します。
DB に、現在 として定義されている列がありますNOT NULL
。を許可するようにこの列を更新したいと思いますNULLs
。
これを行うには次のスクリプトがありますが、以前に変更されている可能性があるため、列が既にNULL
(または) であるかどうかを最初に確認したいと思います。NOT NULL
ALTER TABLE [dbo].[aud]
ALTER COLUMN [actname] nvarchar(50) NULL
どんな助けでも感謝します。
select is_nullable from sys.columns c inner join sys.tables t on
t.object_id = c.object_id where t.name = 'aud' and c.name = 'actname'
BIT
null 可能かどうかを表します。
したがって、次のようにスイッチを入れることができます
IF EXISTS(SELECT * from sys.columns c inner join sys.tables t on
t.object_id = c.object_id where t.name = 'aud' and c.name = 'actname' AND
is_nullable = 1)
BEGIN
--What to do if nullable
END
ELSE
BEGIN
--What to do if not nullable
END
END
もちろん、テーブルと列が存在することを前提としています...
既に Nullable になっている場合、列を Nullable から Nullable に変更しても悪影響はないため、実際にはこれを行う必要はありません。
ただし、次のクエリで実行できます。
SELECT is_nullable
FROM sys.columns
WHERE object_id=object_id('YourTable') AND name = 'yourColumn'