Heim >Datenbank >MySQL-Tutorial >Wie gehe ich mit „Falsche Syntax in der Nähe von ‚go'' um, wenn ich dynamische SQL-Abfragen ausführe?
Das Ausführen dynamischer Abfragen mit GO-Anweisungen in SQL kann zu Fehlern führen, da GO kein anerkannter SQL-Befehl ist. Um dieses Problem zu beheben, ist es wichtig, alle Instanzen von GO aus der dynamischen SQL-Zeichenfolge zu entfernen, bevor Sie sie ausführen.
Beispiel:
Betrachten Sie den folgenden Code, der versucht, eine dynamische Abfrage auszuführen:
DECLARE @script VARCHAR(MAX); SET @script = ' create table ali(id decimal(10,0)); drop table ali; go create table ali(id decimal(10,0)); drop table ali; ' EXEC (@script);
Bei der Ausführung führt diese Abfrage zu folgendem Fehler:
Msg 102, Level 15, State 1, Line 4 Incorrect syntax near 'go'.
Um diesen Fehler zu beheben, entfernen Sie alle Instanzen von GO aus der dynamischen SQL-Zeichenfolge:
DECLARE @script VARCHAR(MAX), @script1 VARCHAR(MAX); SET @script = ' create table ali(id decimal(10,0)); drop table ali; '; SET @script1 = ' create table ali(id decimal(10,0)); drop table ali; '; EXEC (@script); EXEC (@script1);
Dieser geänderte Code führt beide Abfragen erfolgreich aus, ohne dass der Fehler „Falsche Syntax in der Nähe von ‚go‘“ auftritt.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit „Falsche Syntax in der Nähe von ‚go'' um, wenn ich dynamische SQL-Abfragen ausführe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!