crossplatform.ru

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

> Кодировки при работе с MySQL
zerling
  опции профиля:
сообщение 13.2.2009, 12:05
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 19
Регистрация: 31.10.2008
Из: г.Мытищи Московской обл.
Пользователь №: 406

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




Репутация:   0  


База MySQL 4.1, QT 4.3.4 (под windows)
Нужно читать и записывать в БД русские буквы. Таблицы в базе лежат в кодировке UTF8 (даже специально файлы таблиц посмотрел)
На форме таблица заполняется таким образом: (взял из примера в асистенте)
QSqlTableModel*model;
QTableView*tableView;

model=new QSqlTableModel(this,db);
model->setTable("sotrudniki");
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
model->select();
model->removeColumn(0); // don't show the ID
model->setHeaderData(0, Qt::Horizontal, tr("столбец1"));
model->setHeaderData(1, Qt::Horizontal, tr("столбец2"));
model->setHeaderData(2, Qt::Horizontal, tr("столбец3"));
tableView->setModel(model);
tableView->show();


После соединения с БД делаю запрос QSqlQuery(QString("set character set КОДИРОВКА;"),db); для того, чтоб из БД читало в заданной кодировке.. пробовал запрос не делать..
Пробовал задавать для кодеков и для БД кодировки UTF8, cp1251 и даже cp866 :-)
Ничего не помогает отобразить в таблице русские буквы..

Какие кодеки надо поставить в setCodecForCStrings(), setCodecForTr(), setCodecForLocale() чтоб русские буквы отображались нормально в таблице?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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




RSS Текстовая версия Сейчас: 24.4.2024, 4:58