crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> MySql и кодировка
kalombo
  опции профиля:
сообщение 10.12.2008, 18:12
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 37
Регистрация: 5.8.2008
Пользователь №: 252

Спасибо сказали: 0 раз(а)




Репутация:   0  


В функции main есть строчка QTextCodec::setCodecForCStrings(QTextCodec::codecForName("cp1251"));
Есть две формы для ввода данных в БД, одна сделана с помощью QtDesigner (ui-файл соответственно), другая непосредственно - кодом. Первая позволяет выполнить SQL-запрос, то есть данные на русском языке попадают в Бд, вторая - ругается, lastError() выдает что-то вроде "Не могу вставить строку вида "\xd1\xd2\xe3... и т.д." Как это исправить?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 11.12.2008, 18:35
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(kalombo @ 11.12.2008, 20:31) *
Ставлю обеим таблицам cp1251
вот это мне непонятно. Утебя в БД должна быть одна кодировка на всю БД. методом QTextCodec::setCodecForCStrings() ты должен указать библиотеке Qt текущую кодировку ОСьки. Дальше Qt должна все сделать сама, т.е. в водимый (или вставляемый из буфера обмена) в виджеты текст преобразуется в UTF-16 из локальной кодировки, из UTF-16 в кодировку БД
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


6 чел. читают эту тему (гостей: 6, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 6.12.2024, 2:43