Wie setze ich in SQL Server Management Studio einen Spaltenwert auf NULL?


Antworten:


329

Ich denke, @Zack hat die Frage richtig beantwortet, aber nur um alle Grundlagen abzudecken:

Update myTable set MyColumn = NULL

Dies würde die gesamte Spalte auf null setzen, wenn der Fragentitel fragt.

So setzen Sie eine bestimmte Zeile in einer bestimmten Spalte auf null:

Update myTable set MyColumn = NULL where Field = Condition.

Dies würde eine bestimmte Zelle auf null setzen, wie die innere Frage fragt.


3
In seinem Fragetext geht es darum, den Wert aus einer Zelle zu löschen, nicht aus einer ganzen Spalte. Möglicherweise müssten Sie eine where-Klausel ausführen, um den bestimmten Datensatz zu finden, den Sie bearbeiten möchten.
TheTXI

3
@TheTXI guter Fang. Wie geschrieben, ist SQL mächtig gefährlich.
Michael Haren

24
Ich habe die Bedingung absichtlich weggelassen ... Wenn Sie sich die Big Bold-Frage seines Titels ansehen, fragt er, wie Sie eine Spalte auf null setzen.
Jeff Martin

197

Wenn Sie eine Tabelle geöffnet haben und einen vorhandenen Wert auf NULL löschen möchten, klicken Sie auf den Wert und drücken Sie Ctrl+ 0.


9
Um fair zu sein, gab es Azure nicht, als diese Frage gestellt / beantwortet wurde
Jeff Martin

34

Wenn Sie die Tabellenschnittstelle verwenden, können Sie NULL eingeben (alle Großbuchstaben).

Andernfalls können Sie eine Update-Anweisung ausführen, in der Sie:

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

11

Benutze das:

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

So was:

Update News Set Title = CAST(NULL As nvarchar(100)) Where ID = 50

6
Möchten Sie erklären, warum Ihre Antwort besser ist als die der anderen? Ich meine, du postest das ungefähr ein halbes Jahr später.
FancyPants

5

Strg + 0 oder leeren Sie den Wert und drücken Sie die Eingabetaste.


3
Wenn Sie den Wert leeren und auf die Eingabetaste klicken, wird kein NULL-Wert erstellt. Wenn die Spalte ein Zeichenfolgendatentyp ist (varchar und dergleichen), wird eine leere Zeichenfolge erstellt. Wenn die Spalte ein numerischer Datentyp ist (int und dergleichen), wird ein Fehler mit ungültigem Wert angezeigt. Und so weiter. NULL ist das Fehlen eines Werts und bedeutet nicht "leer".
Undrline

0

STRG + 0 scheint nicht zu funktionieren, wenn eine Verbindung zu einer Azure-Datenbank besteht.

Um eine leere Zeichenfolge zu erstellen, können Sie jedoch jederzeit in einer Zelle auf "anykey then delete" klicken.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.