SQLException : Lange Strings werden nicht in die DB gespeichert.

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Trigoor.

    SQLException : Lange Strings werden nicht in die DB gespeichert.

    Hallo...,

    da hatte ich mich gestern zu früh gefreut.

    Habe da folgendes Problem:

    Beim Debugging passiert folgendes:
    SQLException: {"Eine Zeile der Größe 8066 kann nicht erstellt werden, da sie länger als die zulässige maximale Zeilengröße von 8060 wäre. Die Anweisung wurde beendet."}

    Der Debugging stoppt bei:
    Me.TableAdapterManager.UpdateAll(Me.Einstellungen)
    Der Datentyp der Spalte auf dem MS SQL Server ist nvarchar(4000).

    Habe dann folgendes probiert.
    Der Debugging stoppt bei:
    Me.SETTINGSBindingSource.EndEdit()
    SQLException: {"Die Spalte kann nicht auf 'tt1' festgelegt werden. Der Wert überschreitet den MaxLength-Grenzwert dieser Spalte."}
    Der Datentyp auf dem MS SQL Server ist nvarchar(MAX).

    Leider kann ich auch über das SQL Server Management Studio keinen Eintrag in die Spalten vornehmen.
    Fehlernachricht: "Eine Zeile der Größe 8066 kann nicht erstellt werden, da sie länger als die zulässige maximale Zeilengröße von 8060 wäre. Die Anweisung wurde beendet.

    Bin irgendwie echt am verzweifeln. :whistling:

    Viele Grüße
    Trigoor
    Das ist unter nvarchar zu verstehen:

    nvarchar [ ( n | max ) ] Unicode-Zeichendaten variabler Länge. nkann ein Wert zwischen 1 und 4.000 sein. max gibt an, dass die maximale Speichergröße 2^31-1 Bytes beträgt. Die Speichergröße in Bytes ist doppelt so groß wie die Anzahl eingegebener Zeichen + 2 Bytes. Die eingegebenen Daten können 0 Zeichen lang sein. Die ISO-Synonyme für nvarchar sind national char varying und national character varying.
    Quelle: msdn.microsoft.com/de-de/library/ms186939.aspx
    Das Thema hat sich sowieso erledigt. Habe eine neue Tabelle angelegt und auf einmal klappt es.
    Viele Grüße
    Trigoor