Como definir um valor da coluna como NULL no SQL Server Management Studio?

230

Como faço para limpar o valor de uma célula e torná-lo nulo?

Zack Peterson
fonte

Respostas:

329

Acho que o @Zack respondeu adequadamente à pergunta, mas apenas para cobrir todas as bases:

Update myTable set MyColumn = NULL

Isso definiria a coluna inteira como nula conforme solicitado pelo título da pergunta.

Para definir uma linha específica em uma coluna específica para uso nulo:

Update myTable set MyColumn = NULL where Field = Condition.

Isso definiria uma célula específica como nula conforme a pergunta interna pergunta.

Jeff Martin
fonte
3
O texto de sua pergunta pergunta sobre como limpar o valor de uma célula, não de uma coluna inteira. Você provavelmente teria que fazer uma cláusula where para encontrar o registro específico que deseja editar.
TheTXI 14/01/09
3
@TheTXI boa captura. Como está escrito, esse SQL é muito perigoso.
237 Michael Haren
24
Na verdade, deixei de fora a condição ... se você olhar para a grande questão em negrito do título dele, ele pergunta como você define uma coluna como nula.
1013 Jeff Jeff
197

Se você abriu uma tabela e deseja limpar um valor existente para NULL, clique no valor e pressione Ctrl+ 0.

Zack Peterson
fonte
9
para ser justo, Azure não existia quando esta pergunta foi feita / respondidas
Jeff Martin
34

Se você estiver usando a interface da tabela, poderá digitar NULL (todas maiúsculas)

caso contrário, você pode executar uma instrução de atualização onde poderá:

Update table set ColumnName = NULL where [Filter for record here]
TheTXI
fonte
11

Usa isto:

Update Table Set Column = CAST(NULL As Column Type) where Condition

Como isso:

Update News Set Title = CAST(NULL As nvarchar(100)) Where ID = 50
Milad
fonte
6
Importa-se de explicar por que sua resposta é melhor que as outras? Quero dizer, você postou isso quase meio ano depois.
Fancypants
5

Ctrl + 0 ou esvazie o valor e pressione Enter.

Eppz
fonte
3
Esvaziar o valor e clicar em Enter não criará um valor NULL. Se a coluna for um tipo de dados de sequência (varchar e similares), ela criará uma sequência vazia. Se a coluna for um tipo de dados numérico (int e similares), será exibido um erro de Valor Inválido. E assim por diante. NULL é a ausência de um valor e não significa "em branco".
undrline
0

CTRL + 0 parece não funcionar quando conectado a um banco de dados do Azure.

No entanto, para criar uma string vazia, você sempre pode pressionar 'anykey e excluir' dentro de uma célula.

Lee Smith
fonte