In SQL Server 2005 versuche ich eine VARCHAR (MAX) -Spalte abzufragen, die einige Zeilen mit Textdaten hat, die die 8192 überschreiten. In Management Studio habe ich unter Tools -> Optionen -> Abfrage Ergebnisse -> Ergebnisse zu Text -> Maximale Anzahl der Zeichen in jeder Spalte angezeigt = 8192, die ein Maximum ist. Dementsprechend scheint es, dass das Abschneiden dieser Zeilen nur aufgrund der durch die Textausgabe auferlegten Begrenzung erfolgt.SQL Server Abschneiden und 8192 Einschränkung
Das einzige, was ich sehe, um dies zu umgehen, ist eine SUBSTRING-Funktion zu verwenden, sagen die ersten 8000 Zeichen, dann die nächsten 8000 Zeichen usw. usw. Aber das ist hässlich und fehleranfällig.
Ich sollte erwähnen, dass SSIS und BCP sind keine Optionen für mich.
Hat jemand einen besseren Vorschlag? Vielen Dank!
Sind Sie mit, wie die Ausgabe in Query Analyzer angezeigt wird? Wenn Sie es nur verwenden, um über Daten zu schauen, würde ich nicht zu sehr auf "fehleranfälligen" und "hässlichen" Code verzichten. Wenn Sie es für die Produktion verwenden, ist das ein ganz anderes Problem. –
Tom: Ich schaue nicht nur auf Daten. Ich verwende die Abfrageausgabe, um neue gespeicherte Prozeduraufrufe für einen Remote-Server zu generieren, also muss das Ergebnis "perfekt" sein. –
Aber warum SSMS verwenden, um die Abfrage auszuführen? Was passiert, wenn Sie die gleiche Abfrage von einem Programm ausführen? –