Comment stocker plus de 8000 caractères dans une colonne dans SQL Server 2005?
J'ai une table nommée ABC. Dans cette table j'ai une colonne qui est définie comme XYZ
varchar(8000).
Dans cette colonne, je suis ranger le SAVON demande d'erreur.
Mon problème est que je suis maintenant obtenir la longueur de SAVON demande d'Erreur de plus de
8000 (to be accurate it is now 16000).
J'ai lu que la longueur maximale de varchar
est 8000, donc ma question est comment puis-je augmenter la longueur de ma colonne XYZ à 16000?
Vous devez vous connecter pour publier un commentaire.
Si vous avez vraiment besoin de plus de 8000 caractères, vous devez utiliser
VARCHAR(MAX)
qui peut stocker jusqu'à 2 GO de texte:Cela vous donne jusqu'à 2 milliards de caractères - qui est Léon Tolstoj est de la Guerre et de la Paix environ 200 fois devrait être suffisant pour la plupart des cas!
Note: si vous obtenez une demande SOAP, qui ont plus de chance d'être correctement formaté en XML - droit? Dans ce cas, vous pouvez également utiliser le
XML
type de données de SQL Server 2005 et les plus récents. Il a également stocker jusqu'à 2 GO de données, mais il stocke de manière plus efficace qu'un simplevarchar(max)
n' - et vous pouvez exécuter de XPath/XQuery contre pour l'attraper bits à partir d'elle.Je recommande que vous utilisez:
Utilisation
varchar(max)
varchar(n)
est de longueur variable, non-Unicode données de chaîne.n
définit la longueur de la chaîne et peut être une valeur de 1 à 8 000 habitants. max indique que la taille de stockage maximale est de 2^31-1 octets (2 GO).La taille de stockage est la longueur réelle des données d'entrée + 2 octets.
Essayez de démarrer en utilisant un type de données qui gère un texte long. "Texte" vient à mon esprit.
ntext
,text
, etimage
types de données sera supprimée dans une future version de SQL Server. Éviter l'utilisation de ces types de données dans un nouveau développement, et le plan de modifier les applications qui utilisent actuellement. Utilisationnvarchar(max)
,varchar(max)
, etvarbinary(max)
à la place.utilisation de type de données texte,pour référence http://msdn.microsoft.com/en-us/library/ms189574(v=sql.90).aspx
ntext
,text
, etimage
types de données sera supprimée dans une future version de SQL Server. Éviter l'utilisation de ces types de données dans un nouveau développement, et le plan de modifier les applications qui utilisent actuellement. Utilisationnvarchar(max)
,varchar(max)
, etvarbinary(max)
à la place. - comme de SQL Server 2005 et la plus récente, vous devez vous PAS l'utilisationTEXT
plus