Вставьте код Unicode в SQL - PullRequest
       1

Вставьте код Unicode в SQL

1 голос
/ 22 сентября 2011

Я создаю словарную таблицу в sqlserver.

У меня есть коды Unicode \ u0C2D \ u0C3E \ u0C37 для вставки.Как их кодировать при вставке в sqlserver для отображения международного символа.

Я использую NCHAR в качестве типа данных для этого конкретного столбца.

Спасибо K

1 Ответ

5 голосов
/ 22 сентября 2011

Как прокомментировал nonnb, вы, вероятно, можете просто использовать литеральный синтаксис Unicode в ваших операторах INSERT. Если по какой-либо причине вы не можете использовать буквальный синтаксис Unicode и должны кодировать конкретную кодовую точку, используйте функцию NCHAR (). В следующем примере показаны оба:

-- create temp table for this example
create table #TestDictionary (
    [Key] nchar(10),
    Value nvarchar(100)
)

-- insert dictionary entries for the 3 specific code points mentioned

insert into #TestDictionary ([Key],Value)
values (nchar(0x0C2D), 'TELUGU LETTER BHA')

insert into #TestDictionary ([Key],Value)
values (nchar(0x0C3E), 'TELUGU VOWEL SIGN AA')

insert into #TestDictionary ([Key],Value)
values (nchar(0x0C37), 'TELUGU LETTER SSA')

-- If your keyboard allows you to type it into the script directly then it
-- is probably easiest to just use unicode literal syntax.
insert into #TestDictionary ([Key],Value)
values (N'క ', 'TELUGU LETTER KA')

-- Non-unicode string literals can also be inserted into NCHAR/NVARCHAR columns
insert into #TestDictionary ([Key],Value)
values ('A', 'LATIN CAPITAL LETTER A')


select *
from #TestDictionary

Справочную информацию и примеры для NCHAR () можно найти по адресу http://msdn.microsoft.com/en-us/library/ms182673.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...