Мой Kbyte.Ru
Рассылка Kbyte.Ru
Группы на Kbyte.Ru
Партнеры Kbyte.Ru
Реклама
Сделано руками
Сделано руками
> Исходные коды - Алексей Немиро -

Microsoft SQL Server - Общие вопросы

Все примеры / Общие вопросы

Как изменить COLLATE у базы данных?

Автор: Алексей Немиро | добавлено: 28.02.2011, 13:31 | просмотров: 10592 (1+) | комментариев: 0 | рейтинг: *x3
Пример демонстрирует работу с COLLATE (сопоставлением, сортировкой, кодировкой) в СУБД MS SQL Server. В примере показано, как изменить сопоставление у базы данных, таблицы и отдельной колонки.

Код

-- получить список всех доступных сопоставлений (COLLATE)
SELECT * FROM fn_helpcollations() ORDER BY name ASC

-- информация о сопоставлении (COLLATE) текущей базы данных
exec sp_helpsort;
-- либо
SELECT SERVERPROPERTY('Collation');

-- изменить COLLATE у базы данных
ALTER DATABASE [имя базы данных]
COLLATE Latin1_General_CI_AS

-- получить COLLATE колонок указанной таблицы
SELECT a.[name], a.[collation_name] FROM sys.columns AS a
INNER JOIN sys.objects AS b ON a.[object_id] = b.[object_id]
WHERE b.[name] = 'имя таблицы'

-- изменить COLLATE у отдельной колонки
ALTER TABLE [имя таблицы]
ALTER COLUMN [имя колонки] varchar(255) COLLATE SQL_Latin1_General_CP1_CI_AS

-- вывод данных из колонки с указаным COLLATE
-- SELECT [поле] COLLATE Latin1_General_CI_AS FROM [таблица]

CREATE TABLE #tmp (name varchar(100)); --обратите внимание, varchar

INSERT INTO #tmp
SELECT 'привет'

SELECT name COLLATE Latin1_General_CI_AS FROM #tmp;
SELECT name COLLATE Cyrillic_General_CI_AS FROM #tmp;

DROP TABLE #tmp;
Об авторе

Алексей Немиро

Интернет-деятель. Автор многочисленных статей и переводов статей по программированию и информационным технологиям. Работы Алексея можно найти в популярных печатных изданиях компьютерной тематики. Автор проекта Kbyte.Ru.
Сейчас Алексей занимается профессиональным Web-программированием на базе технологий .NET Framework. Иногда пишет различные программки и компоненты для Windows и Android. В свободное время занимается Web-дизайном, увлекается фото- и видеосъемкой.

См. также:
Профиль автора
Алексей Немиро
Последние комментарии (всего: 0)

Добавлять комментарии могут только зарегистрированные пользователи сайта.
Если у Вас уже есть учетная запись на Kbyte.Ru, пройдите процедуру авторизации OpenID.
Если Вы еще не зарегистрированы на Kbyte.Ru - зарегистрируйтесь.


Нет комментариев...

Авторизация
 
OpenID
Зарегистрируйся и получи 10% скидку на добавление своего сайта в каталоги! Подробнее »
Поиск по сайту
Люди на Kbyte.Ru
Реклама
Счетчики