2010-04-14 2 views
4

У меня есть база данных (SQL Server express 2008), которая имеет столбец, который определяется как текст. Когда мы пытаемся сохранить некоторый текст, который находится на китайском языке, он не сохраняется. Я читал, что поле должно быть ntext. Теперь мне нужно преобразовать в таблицу, чтобы создать столбец как ntext.Сохранение русского текста на сервере SQL

Должен ли я что-либо делать с сортировкой базы данных, которая настроена на латиницу?

JD

ответ

8

Вы должны изменить столбец NTEXT или NVARCHAR (MAX).

Сортировка относится только к порядку сортировки, индексированию и сопоставлениям. Если вы сохранили только китайские данные, вы можете использовать Chinese_PRC_90_CI_AI или соответствующую сортировку.

обновление после 1 комментарий:

Для NVARCHAR (и NTEXT), настройка параметров сортировки не влияет на то, как данные хранятся . Как я уже говорил, это влияет на сравнение и сортировку.

Если вы знаете, что в поле будут китайские данные, лучше всего использовать китайскую сортировку. (Я только недавно испытал некоторые проблемы при поиске китайских иероглифов, как и в некоторых параметрах сортировки некоторых символы одинаковых символы пунктуации)

Если вы знаете, что Вы ищете данные на других языках, вы можете изменить параметры сортировки с помощью COLLATE в сравнении или ORDER BYs

+0

@devio: Ну, мы будем хранить другие иностранные данные. Что мне делать с сортировкой в ​​этом случае? Должна ли быть частью установки для настройки? –

+0

@devio: Спасибо за информацию. После проверки схемы нашей существующей базы данных имеется много столбцов varchar (255), которые также могут содержать иностранные символы. Теперь, как лучше всего изменить все эти столбцы на nvarchar (255). Кроме того, я думаю, что колонку TEXT можно изменить на nvarchar (8000). –

1

Убедитесь, что вы изменили тип столбца, как предлагает devio, и измените тип параметра любой хранимой процедуры, связанной с таблицей. Если у вас есть поле NTEXT, но хранимый параметр proc, то есть TEXT, он не сохранит значения.

Смежные вопросы