2009-06-10 4 views

Antwort

8

Ja. Die Aktualisierungsoperation wird nur für Tabellenzeilen ausgeführt, die der WHERE-Klausel entsprechen.

Denken Sie darüber nach, wie die WHERE-Klausel die Zeilen auswählt, gefolgt von der SET-Klausel, die diese ausgewählten Zeilen aktualisiert.

4

Nur um klar, dass man nur

UPDATE [MyTable] 
SET [SomeField] = 1 
WHERE [SomeField] is NULL 

als die where-Klausel verwendet wird tun müssen, nur den Umfang zu reduzieren, das Update angewendet wird.

Es hört sich an, als würden Sie von einem Entwicklungshintergrund in SQL kommen, so dass ein Ratschlag, den Sie vielleicht nützlich finden, darin besteht, Ihre Operationen innerhalb einer Transaktion auszuprobieren. Auf diese Weise können Sie alle Fehler, die Sie machen, rückgängig machen und den SQL-Code verfeinern, an dem Sie gerade arbeiten.

diesen Lauf

BEGIN TRAN 

zu verwenden, bevor Sie den Befehl, den Sie und

ROLLBACK TRAN 

dann testen möchten, führen Sie es rückgängig zu machen, oder

COMMIT TRAN 

es

dauerhaft zu machen
Verwandte Themen