Как вставить текст Unicode в SQL Server из окна запроса - PullRequest
35 голосов
/ 29 августа 2009

Я использую следующий код:

INSERT INTO tForeignLanguage ([Name]) VALUES ('Араб')

это значение вставлено как '????'

Как вставить текст в кодировке Юникод из окна запроса sql management studio?

Ответы [ 4 ]

82 голосов
/ 29 августа 2009

Должно работать следующее, N указывает «постоянную строку Юникода» в MSSQL:

INSERT INTO tForeignLanguage ([Name]) VALUES (N'Араб')
1 голос
/ 04 октября 2018

Идеальное решение с ограничением типов данных:

В основном в MS-SQL Server амхарский текст не работает должным образом, когда тип столбца имеет тип «текст». Поэтому, чтобы поместить амхарский текст в столбец с текстом типа данных, сначала измените текстовый тип данных на « nvarchar (MAX) 'или просто' nvarchar 'с любой длиной символа, поддерживаемой MS-SQL Server.

0 голосов
/ 04 мая 2018

В моем случае задача была в том, чтобы обновить таблицу SQL, которая содержит список стран на двух языках, в которых столбец локального языка (амхарский) был нулевым, поэтому выполнение следующего прекрасно работает.

    Update [tableName] set [columnName] = N'አሜሪካ'

N в N 'አሜሪካ' - это ключ для ввода строки в том виде, в каком она есть в вашем конкретном столбце.

0 голосов
/ 20 ноября 2014

Просто введите тип данных NVarchar в базу данных и следуйте за ним;

internal string InsertUpdate(classname obj)
{
    SqlParameter[] sqlparam = new SqlParameter[];
    sqlparam[] = new SqlParameter("@DESC1", SqlDbType.NVarChar);
    sqlparam[].Value = NullHandler.String(obj.DESC1);
    sqlparam[] = new SqlParameter("@DESC2", SqlDbType.NVarChar);
    sqlparam[].Value = NullHandler.String(obj.DESC2);
    obj.InsertUpdateTable("spname", "sp", sqlparam);
    if (sqlparam[].Value != DBNull.Value)
        return sqlparam[].Value.ToString();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...