如何在SQL Server的nvarchar列中输入值'NULL'?

时间:2011-11-03 18:58:01

标签: sql sql-server tsql

我需要将文字值'NULL'作为默认值插入nvarchar列。但是当我插入记录时,默认值为db NULL而不是文字'NULL'。有人能告诉我哪里出错了吗?

3 个答案:

答案 0 :(得分:5)

所以你想要插入实际的“NULL”字符串吗?尝试这样的事情:

create table NullTable
(
    nvarchar(100) not null default 'NULL',
    .... -- your other fields
)

编辑: 以下是完整的解决方案

create table InsertNull
(
    Nullfield nvarchar(100) not null default 'NULL',
    someint int not null
)
go

insert into insertnull(someint)
select 20

select *
from InsertNull

答案 1 :(得分:3)

请注意引号:

INSERT INTO yourtable (varcharfield) VALUES ('NULL'); // string null
INSERT INTO yourtable (varcharfield) VALUES (NULL); // actual null

答案 2 :(得分:1)

如果在代码中设置默认值而不是设计器应该可以工作。

ALTER TABLE [myTable] ADD  DEFAULT ('NULL') FOR [TextColumn]