Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ODBC и Access
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Разработка баз данных
Max Payne
Всем привет. Наткнулся на следующую проблему: пишу программу на С++ Qt для работы с базой данных Access. Подключаюсь нормально. но все буквы на кирилице (русские) отображаются некорректно . Пробовал указывать разные кодировки типа cp1251, UTF-8, Latin1. Ничего не помогает. кто сталкивался с кодировками помогите пож. , подключаюсь через ODBC driver:
void Pan_Kot::on_pushButton_3_clicked()
{
    QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
    db.setConnectOptions();
    db.setDatabaseName("DRIVER={Microsoft Access Driver (*.mdb)}; FIL={MS Access};DBQ=C:/1.mdb");
    if(db.open()==false)
    {
        QMessageBox::critical(0,tr(" Error 001 "), tr ("Ошибка подключения к базе данных : \n").append(db.lastError().text()));
        return;
    }
    QStringList tables = db.tables();
    qDebug() << tables;
    return;
}

Вся проблема в том что возвращается не корректное название таблиц при использовании метода
QsqlDatabase::tables(QSql::Tables)

Помоги Юр пож...
crashsp
Попробуй в main.cpp после QApplication app(argc, argv); добавить
QTextCodec *codec = QTextCodec::codecForName("Windows-1251");
QTextCodec::setCodecForTr(codec);
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
Max Payne
Я пробовал , такие тривиальные вещи я перепробовал =/
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.