werden in SQL Server 2005 abgestoßen 4000 Zeichen anstelle des erwarteten 8000. Diese Kürzung erfolgt aufgrund eines bestimmten Szenarios im angegebenen Code.
die deklaration
Die Variable @SQL1 wird als nvarchary deklariert deklariert (Max), wodurch es bis zu 2 GB Daten speichern kann. Dieser Datentyp wird jedoch erst in der ersten Zuordnungsoperation zugewiesen.
Die Verkettungsprozess
In dem angegebenen Code wird die Zeichenfolge durch Verkettung einer Reihe von Konstanten und Konstanten erstellt und Variablen, die alle weniger als 4000 Zeichen haben. Bevor die verkettete Zeichenfolge @SQL1 zugewiesen wird, wird sie immer noch als Sammlung kleinerer Zeichenfolgen angesehen. Typ der Konstante (Nvarchar (max)) überschreibt den Datentyp der verketteten Zeichenfolge (die effektiv nvarchar (4000) ist). Dies führt dazu, dass der endgültige String auf 4000 Zeichen abschneidet. Nvarchar (max). Dies kann durch die Verwendung des folgenden Codes erreicht werden:
set @sql1 = '' '' Setzen Sie @SQL1 = @SQL1 'Wählen Sie einen bestimmten Veranstaltungsort aus ... ....Indem Sie zuerst @SQL1 auf eine leere Zeichenfolge einstellen, führt die Verkettungsoperation immer zu einem Nvarchar (max) -Wertzwert und verhindert das Abfallproblem.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3