Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL Server-Feld wird abgeschnitten

Ihr Problem ist, dass Sie denken, dass Management Studio Ihnen alle Daten präsentieren wird. Das tut es nicht. Gehen Sie zu Extras> Optionen> Abfrageergebnisse> SQL Server. Wenn Sie Results to Grid verwenden, ändern Sie „Maximal abgerufene Zeichen“ in „Nicht-XML-Daten“ (beachten Sie nur, dass Results to Grid jedes CR/LF eliminiert). Wenn Sie "Ergebnisse in Text" verwenden, ändern Sie "Maximale Anzahl der in jeder Spalte angezeigten Zeichen."

Sie könnten versucht sein, mehr einzugeben, aber das Maximum, das Sie in Management Studio zurückgeben können, ist:

65535 for Results to Grid
8192  for Results to Text

Wenn Sie wirklich alle Daten in Management Studio sehen möchten, können Sie versuchen, sie in XML zu konvertieren, aber auch das hat Probleme. Legen Sie zuerst Results To Grid> XML-Daten auf 5 MB oder unbegrenzt fest, und führen Sie dann Folgendes aus:

SELECT CONVERT(XML, column) FROM dbo.table WHERE...

Dies erzeugt nun ein Rasterergebnis, bei dem der Link tatsächlich anklickbar ist. Dadurch wird ein neues Editorfenster geöffnet (es handelt sich nicht um ein Abfragefenster, es gibt also keine Schaltflächen zum Ausführen, kein IntelliSense usw.), in dem Ihre Daten in XML konvertiert sind. Das bedeutet, dass > ersetzt wird mit > etc. Hier ist ein kurzes Beispiel:

SELECT CONVERT(XML, 'bob > sally');

Ergebnis:

Wenn Sie auf das Raster klicken, erhalten Sie dieses neue Fenster:

(Es hat eine Art IntelliSense, validierendes XML-Format, weshalb Sie die Schnörkel sehen.)

ZURÜCK AUF DER RANCH

Wenn Sie nur die Plausibilität überprüfen und nicht wirklich alle 383 KB an eine andere Stelle kopieren möchten, dann tun Sie es nicht! Überprüfen Sie einfach mit:

SELECT DATALENGTH(column) FROM dbo.table WHERE...

Dies sollte Ihnen zeigen, dass Ihre Daten von der Datenbank erfasst wurden und das Problem das Tool und Ihre Überprüfungsmethode ist.

(Ich habe seitdem geschrieben einen Tipp dazu hier .)