C# спящий режим | PL/SQL Oracle – строка разной длины, если она содержит диакритические знакиC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 C# спящий режим | PL/SQL Oracle – строка разной длины, если она содержит диакритические знаки

Сообщение Anonymous »

У меня есть пример строки, которую я пытаюсь поместить в качестве значения в столбец VARCHAR(255) (в базе данных oracle), используя объект nhibernate ISession.

Код: Выделить всё

abssssssssssssssssssssssssd RRRRRRRRRRRRRRRAAAAAAAAAAAAAAAąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąąassssssssssssssssss ansssssssssssssssssssssssssssssssssssssssssssssssssssssss ssssssssssssssssssssss

На уровне приложения я проверяю string.Length, и она соответствует ожиданиям (255). Кроме того, я также делаю следующий запрос к базе данных:

Код: Выделить всё

            const string lengthCheckSql = @"SELECT LENGTH(:valueToCheck) as charCount FROM DUAL";
var result = _session.CreateSQLQuery(lengthCheckSql)
.AddScalar("charCount", NHibernateUtil.Int32)
.SetString("valueToCheck", valueToCheck)
.UniqueResult();
Который также возвращает ожидаемое значение (255).
В конце, когда я вызываю Save из объекта ISession, я получаю исключение из база данных, которая ,,valueToCheck" имеет большую длину, разрешенную в базе данных;
,,(текущее: 352, разрешено: 255)"
Когда я меняю ,ą' на ,a ', тогда все работает нормально.
Я пытаюсь найти, в чем проблема: Nhibernate по умолчанию преобразует некоторые символы в другой Юникод, который моя база данных позволяет использовать?

Подробнее здесь: https://stackoverflow.com/questions/790 ... t-contains
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»