Как сохранить и восстановить строку Юникода из SQL Server Management Studio - PullRequest
0 голосов
/ 04 ноября 2011

Я хочу сохранить в своей базе данных Unicode строки

, то есть "Содержимое" ниже.Как я могу это сделать?

using (DbCommand objCMD = objDB.GetStoredProcCommand("usp_InsertMessage"))
{
    objDB.AddInParameter(objCMD, "@Author", DbType.String, msg.Author);
    objDB.AddInParameter(objCMD, "@Email", DbType.String, msg.Email);
    objDB.AddInParameter(objCMD, "@Content", DbType.String, msg.Content);
    objDB.AddInParameter(objCMD, "@Guid", DbType.Guid, msg.Guid);

    try
    {
        objDB.ExecuteNonQuery(objCMD);
    }

1 Ответ

0 голосов
/ 04 ноября 2011

Поскольку .NET использует Unicode для всех своих строк, это должно быть в порядке, IF ваши параметры, такие как @Author и @Email, определены как NVARCHAR(x) в вашем сохраненном процедуры, и если столбцы, в которых вы храните эту информацию, также определены как NVARCHAR(x).

Итак, вопрос в том, видите ли вы какие-либо проблемы? Если так: что это за ??

В качестве идентификатора: я бы всегда определял / определял длина для строкового параметра. Не уверен, что этот метод AddInParameter делает, если вы опускаете длину строкового параметра - часто будет значение по умолчанию, которое может быть или не быть достаточным для вас; поэтому, чтобы избежать неожиданностей, я предпочитаю всегда явно определять максимальную длину для любых строковых параметров.

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