crossplatform.ru

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


  Ответ в QSettings в SQL базе
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
asvil Дата 24.4.2010, 15:07
  И я добавлю свой вариант в старую тему. Класс с интерфейсом идентичным QSettings:
QtSqlSettings
Пример кода:
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("database");

//    db.setHostName("localhost");

if (db.open("admin", "admin")) {
  if (!db.tables().contains("app_settings")) {
    QSqlQuery q = db.exec("CREATE TABLE app_settings "
    "( "                    
    "    key_column text NOT NULL, "                                
    "    value_column text, "
    "    CONSTRAINT app_settings_pk PRIMARY KEY (key_column) "
    ")");
    if (q.lastError().isValid())
      qDebug() << q.lastError().text();
    }
  QtSqlSettings *settings = new QtSqlSettings(db.connectionName());
  settings->setValue("New Value", QStringList() << "First line" << "SecondLine");

  settings->setValue("group1/value1", QVariantList() << 1 << 3);

  settings->setValue("bytearray", QByteArray("bytearray", 9));

  settings->save();

  delete settings;
molchanoviv Дата 15.3.2010, 9:16
  Добавлю свой вариант в старую тему. Можно использовать формат INI и его хранить в БД в текстовом виде. Я думаю это лучше чем использовать BLOB.
badguy Дата 5.11.2008, 12:20
 
Цитата(Litkevich Yuriy @ 5.11.2008, 11:18) *

Думаю сделать еще проще: файл с настройками хранить в базе в виде BLOB'a, перед инстанцированием объекта QSettings прочитать файл из базы, QSettings инстанцировать конструктором, который принимает имя файла и т.д. в обратную сторону.
Litkevich Yuriy Дата 5.11.2008, 11:18
  badguy, Можно создать собственный формат с помощью:
Format QSettings::registerFormat ( const QString & extension, ReadFunc readFunc, WriteFunc writeFunc, Qt::CaseSensitivity caseSensitivity = Qt::CaseSensitive ) [static]
badguy Дата 5.11.2008, 10:37
  Посоветуйте как быть: есть достаточно много кода, основанного на QSettings, возникла необходимость хранить это все в SQL базе. Хотелось бы малой кровью, т.е. что-то с интерфейсом QSettings либо как-то сам QSettings сериализовать/десериализовать чтоб инстанцировать его из базы... Никто чем-то подобным не замораивался? Может идеи какие есть?
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 16.7.2025, 5:20