¿Cuál es el mejor tipo de datos para almacenar cantidades moderadas de texto en SQL Server (2005)?

StackOverflow https://stackoverflow.com/questions/203780

  •  03-07-2019
  •  | 
  •  

Pregunta

¿Cuál es el mejor tipo de datos para almacenar cantidades moderadas de texto en SQL Server (2005)?

Por ejemplo, imagine una tabla que almacena información sobre descargas disponibles en un sitio web. Quiero un título para la descarga que sea breve, digamos varchar (20). Una ruta, digamos varchar (255), luego quiero almacenar un texto fácil de usar sobre la descarga: una descripción. En algunos casos puede ser tan corto como el título, otras veces puede que necesite algunos párrafos explicativos.

¿Qué es lo mejor? ¿Un varchar con un tamaño de digamos 4000, o un varchar (max) o algo más?

¿Fue útil?

Solución

El límite máximo de caracteres de la especificación PAD (Descripción de la aplicación portátil) para la descripción del programa es de 2000 caracteres * consulte la sección Descripciones del programa.

http://www.asp-shareware.org/pad/spec /spec.php

Las herramientas de envío del sitio de descarga utilizan esta especificación para facilitar a los autores el envío de su software. También creo que hay un par de listas que puedes descargar que siguen las especificaciones de PAD.

Entonces sugeriría varchar (2000) en base a ese hecho que no quisiera almacenar más de lo que necesito. Un registro estaría bien con varchar (max), pero cuando tenga miles, el costo de almacenamiento podría aumentar.

Editar: varchar (max) puede ser 2GB - 1, por eso lo limitaría. http://msdn.microsoft.com/en-us /library/ms176089(SQL.90).aspx

Otros consejos

use varchar (max), puede poner un texto enorme en él y su tamaño de almacenamiento aumenta según sea necesario. puede tener funciones de grupo sql como tener, group by en varchar (max). o puede buscar el tipo de datos de texto si busca una búsqueda de texto completo en SQL

El tamaño debe depender del tamaño de los datos que se almacenan. No use varchar (max) para un campo de estado con solo 2 caracteres. Por lo general, miro el valor más grande que espero obtener y luego agrego un factor de falsificación del 10-20% al determinar el tamaño. No olvides usar nvarchar si necesitas almacenar caracteres unicode.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top