Consideraciones internacionales para la búsqueda de texto

Elegir un idioma al crear un índice de texto

Hay varios aspectos que deben tenerse en cuenta al elegir el idioma de columna cuando se crea un índice de texto. Estas consideraciones se refieren al modo en que se acorta el texto y se indiza a continuación mediante el Microsoft Full-Text Engine for SQL Server (MSFTESQL). Un separador de palabras acorta el texto que se va a indizar en límites de las palabras. En inglés, por ejemplo, estos límites de las palabras suelen ser espacios en blanco o alguna forma de puntuación. En otros idiomas, como el alemán, es posible combinar las palabras o caracteres; por lo tanto, el idioma de columna que elija debería representar el idioma que desea que se almacene en las filas de dicha columna. Si no está seguro, se recomienda utilizar el separador de palabras neutral, que acorta el texto basándose únicamente en la puntuación y los espacios en blanco. Otra de las ventajas del idioma de columna que elija es el uso de la lematización. En las consultas de texto, la lematización es un proceso de búsqueda de todas las formas con inflexión de una palabra en un idioma determinado.

Otra consideración en la elección del idioma se refiere al modo en que se representan los datos. En los datos que no se almacenan en la columna varbinary(max), no se realiza ningún proceso de filtro especial, sino que el texto suele pasarse por el componente separador de palabras tal y como es. Los separadores de palabras se han diseñado principalmente para procesar el texto escrito. Por ello, si el texto contiene algún tipo de marcado (por ejemplo, HTML), es posible que los procesos de indización y búsqueda no se realicen con gran precisión lingüística. En tal caso, tiene dos opciones: almacenar simplemente los datos de texto en la columna varbinary(max) e indicar su tipo de documento para poder filtrarlos (es el método preferido), o utilizar el separador de palabras neutral y, si es posible, agregar datos de marcado (como 'br' en HTML) a las listas de palabras irrelevantes.

[!NOTA] La lematización basada en el idioma no interviene cuando se especifica el idioma neutral.

Compatibilidad con idiomas

En Microsoft SQL Server 2005, las consultas de texto pueden utilizar idiomas que no sean el predeterminado en la columna para buscar datos de texto. Siempre y cuando el idioma sea compatible y estén instalados sus recursos, el idioma especificado en la cláusula LANGUAGE language_term de la consulta CONTAINS, CONTAINSTABLE, FREETEXT y FREETEXTTABLE se utilizará para procesar la separación de palabras, la lematización, el diccionario de sinónimos y las palabras irrelevantes.

En la siguiente tabla se muestra el idioma en el que se almacenan los datos de índice de texto. El idioma se basa en el identificador de configuración regional de intercalación Unicode seleccionado durante la instalación de Microsoft SQL Server.

Identificador de configuración regional de intercalación Unicode Idioma para el almacenamiento de datos de texto

Chinese Bopomofo (Taiwan)

Chino tradicional

Chinese Punctuation

Chino simplificado

Chinese Stroke Count

Chino simplificado

Chinese Stroke Count (Taiwan)

Chino tradicional

Dutch

Holandés

English UK

Inglés (Reino Unido)

French

Francés

General Unicode

Inglés (Estados Unidos)

German

Alemán

German Phonebook

Alemán

Italian

Italiano

Japanese

Japonés

Japanese Unicode

Japonés

Korean

Coreano

Korean Unicode

Coreano

Spanish (Spain)

Español

Swedish/Finnish

Sueco

El resto de los valores de identificadores de configuración regional de intercalación Unicode que no se encuentran en esta lista se asignan al lematizador y separador de palabras del idioma neutral, que utiliza espacios en blanco para delimitar palabras.

[!NOTA] El valor del identificador de configuración regional de intercalación Unicode se utiliza con todos los tipos de datos que se pueden utilizar en la indización de texto (tales como char, nchar, etc.). Aunque el orden de una columna de tipo char, varchar o text esté establecido en una configuración de idioma distinta del idioma del identificador de configuración regional de intercalación Unicode, éste se sigue utilizando durante la indización de texto y las consultas de las columnas de tipo char, varchar y text.

Vea también

Otros recursos

Conceptos de la búsqueda de texto
Tipos de datos (Transact-SQL)
CONTAINS (Transact-SQL)
CONTAINSTABLE (Transact-SQL)
FREETEXT (Transact-SQL)
FREETEXTTABLE (Transact-SQL)

Ayuda e información

Obtener ayuda sobre SQL Server 2005