Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MySQL - Запросы с широкими символами

Ответить
Настройки темы
MySQL - Запросы с широкими символами

Пользователь


Сообщения: 78
Благодарности: 5

Профиль | Отправить PM | Цитировать


Всем добрый день!

Снова о своем "любительском проекте". Созданный мной ранее на РНР движок базы сохранял кириллицу в БД в UTF8. Собственно, если бы даже и не так, пришлось бы в ряде процедур все равно конвертировать в UTF8. И вот теперь, делаю алгоритмы ядра на С под Debian, столкнулся с тем, что нужно из таблицы вычитывать данные с "широкими" символами, их обрабатывать, и загонять назад, так же в "широких" символах.
С типом wchar_t разобрался вроде...

Подскажите пожалуйста правильный синтаксис запросов, (я так полагаю, mysql_real_query()?) для извлечения в широкосимвольный массив! Только за эту задачу взялся, "нахрапом" взять не удалось - компилятор выдает кучу мата от mysql.h...

И по поводу функции swprintf(). Там второй аргумент - "count - максимальное число символов, которое сохраняется в версии Unicode этой функции." Порывшись в описании UTF8 нахожу информацию:

wiki:
"Алгоритм UTF-8 технически позволяет записывать код любой длины. Но для эффективной и надёжной работы алгоритма необходимо ограничение длины кода. Действующий стандарт Unicode 6.х предполагает использование кода до 21-го бита, то есть до четырех байт в UTF-8.".

Я так полагаю, это означает, что аргументу count следует присвоить значение "4"?

Отправлено: 15:30, 12-06-2015

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата evpu:
И по поводу функции swprintf(). Там второй аргумент - "count - максимальное число символов, которое сохраняется в версии Unicode этой функции." Порывшись в описании UTF8 нахожу информацию:
wiki:
"Алгоритм UTF-8 технически позволяет записывать код любой длины. Но для эффективной и надёжной работы алгоритма необходимо ограничение длины кода. Действующий стандарт Unicode 6.х предполагает использование кода до 21-го бита, то есть до четырех байт в UTF-8.".
Я так полагаю, это означает, что аргументу count следует присвоить значение "4"? »
Не там рылись. Второй аргумент — ровно то, что написано.
Цитата:
If the resulting wide string would be longer than len-1 characters, the remaining characters are discarded and not stored.
Цитата:
Maximum number of wide characters to fill in the ws buffer. The generated string has a length of at most n-1, leaving space for the additional terminating null wide character.
Зачем категорию выбрали при создании темы MySQL, когда у Вас C++?!

Отправлено: 18:31, 12-06-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 78
Благодарности: 5

Профиль | Отправить PM | Цитировать


Спасибо за ответ!

С swprintf в любом случае разберусь... Спасибо за информацию. Суть в том, что из базы посредством mysql_query нужно извлекать данные, содержащие UTF8, путем форматированного вывода включать эти данные в UPDATE-запрос, и выполнять его, обычная mysql_query этот формат не отправляет... а с mysql_real_query пока не получилось.

Отправлено: 19:39, 13-06-2015 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MySQL - Запросы с широкими символами

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Папка с нечитаемыми символами в папке профилей geepnozeex Microsoft Windows 7 8 17-04-2013 14:24
CMD/BAT - Поиск строки с определенными символами dima9069 Скриптовые языки администрирования Windows 13 26-12-2012 06:44
Интерфейс - проблема з символами в win7 Chainyk1 Microsoft Windows 7 1 08-12-2011 17:59
[решено] Проблема с символами xp9 Хочу все знать 0 12-07-2010 15:25
Ошибка - Проблема с символами Юникода vagifali Microsoft Windows 2000/XP 2 18-06-2008 16:28




 
Переход