alter table aktualisieren Sie dann in einzelne Anweisung
Habe ich eine Anforderung, wo ich brauche zu Ändern (Hinzufügen, 2 Spalten) und dann update auf die gleiche Tabelle.
Hier ist die Abfrage, die ich habe versucht:
ALTER TABLE A
ADD c1 int,c2 varchar(10)
UPDATE A set c1 = 23, c2 = 'ZZXX'
Muss ich laufen, die beiden oben genannten Abfragen gleichzeitig.
Ich bin mit Talend ETL-tool, in diesem haben wir eine Komponente tMssqlrow, die es uns ermöglichen, führen Sie mehrere Abfragen (ich bin mit 10-15 update-Abfragen in eine einzige Komponente).
Aber die obige Abfrage funktioniert nicht.
Getestet habe ich in der Datenbank Microsoft SQL. ich erhalte die folgende Fehlermeldung :
Msg 207, Ebene 16, Status 1, Zeile 5
Ungültige Spalte name 'c1'. Msg 207,
Ebene 16, Status 1, Zeile 5
Ungültige Spalte name 'c2'.
kann einer mir helfen, dieses problem zu beheben.
InformationsquelleAutor der Frage Raghunath | 2013-04-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie nicht tun, diese genau in einer einzigen Anweisung (oder batch -) und so scheint es das Werkzeug, das Sie verwenden nicht unterstützt
GO
als batch-Trennzeichen.Können Sie
EXEC
zu laufen, es in ein Kind batch obwohl.NB: Alle einfachen Anführungszeichen in der query müssen verdoppelt werden wie oben beschrieben zu entkommen Sie in einem string-literal.
Oder alternativ können Sie ähnliche Ergebnisse erzielen, in einer einzelnen Anweisung mit Hilfe von einigen default-Einschränkungen.
Aber das ist nicht genau das gleiche wie das original-query als default-Einschränkungen werden zurückgelassen und müssen gelöscht werden.
InformationsquelleAutor der Antwort Martin Smith
Verwenden, GEHEN zwischen 2 Abfragen.
InformationsquelleAutor der Antwort Nilesh Thakkar
Versuchen, diese
InformationsquelleAutor der Antwort Harshil