SQL Server Abschneiden der Fehler bei der Spalte Länge sollte ausreichend sein

Ich habe eine Tabelle in SQL Server 2008


Tabelle-Name : tbl_device

Tisch Struktur:

Spalte | Typ 
col1 | nvarchar(200) 

Wenn ich jetzt versuche zum einfügen von Daten in diese (es funktioniert für kürzere Fällen aber) und die string-Daten ist lang also mit
LEN-Funktion ist es 162

Immer noch die server gibt Fehler :

Msg 8152, Ebene 16, Status 4, Zeile 1 
Zeichenfolgen-oder Binärdaten würden abgeschnitten werden. 

was sollte der Grund dafür sein ??

  • Bitte geben Sie repro-code, weil dieses problem sollte nicht bestehen. Ihr code einen bug hat, müssen, um es zu betrachten.
  • Sind Sie sicher, dass es diese Spalte, die die Nachricht empfängt? Auch könnten dann die Daten mit nachfolgenden Leerzeichen? LEN: "Gibt die Anzahl der Zeichen des angegebenen string-Ausdrucks, ohne nachgestellte Leerzeichen."
  • Cn Sie zeigen uns, wie der string aussieht?
  • Sind Sie das einfügen mit Hilfe von SQL oder in der "Tabelle Bearbeiten" - Ansicht im Management Studio? Mein Management Studio wirft dies die ganze Zeit, aber raw-SQL-inserts sind in Ordnung.
  • Vielleicht haben Sie einen trigger auf der Tabelle, die mithilfe einer temp-Tabelle/Tabelle var mit einer kleineren Spalte Länge?
  • Das ist das ticket, denn das ist die nutzlos Ausnahmemeldung je ausdrücklich, weil es nicht sagen, welche Spalte ist traurig.
  • Ich Stimme seiner unglücklichen. Aber, ich kann fast sehen, eine Rechtfertigung für es - wenn SQL war zu bleiben, basiert, und melden Sie den genauen Fehler zu Orten, es sollte über sämtliche Fehler, für alle Zeilen - aber das könnte teuer werden, zu berechnen. Also, es ist sagen Sie, dass es ein Problem in der Daten, und Sie sollten prüfen, alle es (anderen Zeilen könnte genau das gleiche Problem in einer anderen Spalte)
  • Eine seltsame Sache, die ich gefunden in Bezug auf diese war, wenn wir drücken Sie alt+F1, oder zu sagen, beschreiben Sie die Tabelle zeigte mir die Länge vom Datentyp nvarchar 200, aber der Täter war, wenn ich ging und überprüft die Tabelle in der Entwurfsansicht er erzählte mir vom Datentyp nvarchar(100) !!!

InformationsquelleAutor bhuvin | 2012-07-02
Schreibe einen Kommentar