Ver Mensaje Individual
  #7  
Antiguo 10-02-2012
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Reputación: 19
olbeup Va camino a la fama
Yo utilizo SQL SERVER 2005 con varchar(MAX) no he tenido ningún problema hasta ahora, como dice tiammat utiliza el WideString que es la asignación correcta para guardar los datos.

Una breve explicación de la ayuda de SQL SERVER 2005


Son tipos de datos de caracteres que tienen longitud fija o variable.

char [ ( n ) ]
Datos de caracteres no Unicode de longitud fija, con una longitud de n bytes. n debe ser un valor entre 1 y 8.000. El tamaño de almacenamiento es n bytes. El sinónimo de char en SQL-2003 es character.

varchar [ ( n | max ) ]
Datos de caracteres no Unicode de longitud variable. n puede ser un valor entre 1 y 8.000. max indica que el tamaño de almacenamiento máximo es de 2^31-1 bytes. El tamaño de almacenamiento es la longitud real de los datos especificados + 2 bytes. Los datos especificados pueden tener una longitud de 0 caracteres. Los sinónimos de varchar en SQL-2003 son char varying o character varying.

Notas
Cuando no se especifica n en una instrucción de definición de datos o de declaración de variable, la longitud predeterminada es 1. Cuando no se especifica n al utilizar las funciones CAST y CONVERT, la longitud predeterminada es 30.

A los objetos que utilizan char o varchar se les asigna la intercalación predeterminada de la base de datos, a menos que se asigne una intercalación específica mediante la cláusula COLLATE. La intercalación controla la página de códigos utilizada para almacenar los datos de caracteres.

Si tiene sitios que admiten varios idiomas, considere el uso de tipos de datos Unicode nchar o nvarchar para reducir al mínimo los problemas de conversión de caracteres. Si usa char o varchar, siga estas recomendaciones:

Utilice char cuando los tamaños de las entradas de datos de columna sean coherentes.


Utilice varchar cuando los tamaños de las entradas de datos de columna varíen de forma considerable.


Utilice varchar(max) cuando los tamaños de las entradas de datos de columna varíen de forma considerable y se pudieran superar los 8.000 bytes.


Si SET ANSI_PADDING es OFF cuando se ejecuta CREATE TABLE o ALTER TABLE, una columna de tipo char definida como NULL se trata como si fuera de tipo varchar.

Si la página de códigos de la intercalación utiliza caracteres de doble byte, el tamaño de almacenamiento sigue siendo de n bytes. Dependiendo de la cadena de caracteres, el tamaño de almacenamiento de n bytes puede ser inferior a n caracteres.

Un saludo.
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber.

Última edición por olbeup fecha: 10-02-2012 a las 09:27:08.
Responder Con Cita