Как сконвертировать UTF8 в SQL Latin1, При записи и для запросов SELECT .. LIKE |
Здравствуйте, гость ( Вход | Регистрация )
Как сконвертировать UTF8 в SQL Latin1, При записи и для запросов SELECT .. LIKE |
silver47 |
3.1.2011, 11:07
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 356 Регистрация: 1.4.2010 Пользователь №: 1584 Спасибо сказали: 40 раз(а) Репутация: 6 |
Доброго времени суток.
Такая проблема у меня: база данных в кодировке SQL Latin1 General CP1 CI AS. При выполнении запросов SELECT все нормально, русские символы отображаются как нужно, но если выполнить
то получаю пустоту. При записи в базу данных русского текста, получается что угодно, кроме русского текста. Qt хранит все строки в UTF8 как сконвертировать эти строки в кодировку базы данных. Менять кодировку БД нельзя, т.к. неизвестно как поведет себя буржуйский софт, который для нее писался. Qt 4.7.0; Win 7; MS SQL 2005 Спасибо. |
|
|
silver47 |
13.1.2011, 10:12
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 356 Регистрация: 1.4.2010 Пользователь №: 1584 Спасибо сказали: 40 раз(а) Репутация: 6 |
Сам спросил - сам отвечаю, может кому сгодиться: при добавлении символьных строк на сервер из клиента, работающего по юникоду перед символьной строкой следует ставить символ N, дабы сообщить серверу, что следующая строка в кодировке юникод.
Чтобы понятнее было: SQL UPDATE dbo.UDFEMP SET EMAIL = N'привет' WHERE dbo.UDFEMP.ID = 7186; ну и для SELECT: SQL WHERE something LIKE N'%someString%'; Где прочитал. Сообщение отредактировал silver47 - 13.1.2011, 10:31 |
|
|
Текстовая версия | Сейчас: 11.12.2024, 17:52 |