Russian Qt Forum
Ноябрь 24, 2024, 04:16 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Запись данных в базу MS Excel  (Прочитано 8610 раз)
vunshpunsh
Гость
« : Февраль 27, 2010, 15:56 »

Здравствуйте!

Проблема в следующем: пытаюсь в таблицу файла Excel записать данные. Подключаюсь с помощью ODBC.
Код:
setDatabaseName("DRIVER={Microsoft Excel Driver (*.xls)};FIL={MS Excel}; DBQ=" + QDir::currentPath()+ "/" +dbName);
Код:
QSqlTableModel *model = new QSqlTableModel;
    model->setTable(TABLENAME);
    model->select();
    QSqlRecord rec =  model->record();
    rec.setValue(0,QVariant(123).toString());
    model->setRecord(0,rec);
    model->submitAll();


    QTableView *v = new QTableView();
    v->setModel(model);
    v->show();
При выполнении данного кода во view отображается уже измененная ячейка, но в отладочном выводе
QODBCResult::exec: Unable to execute statement: "  [Microsoft][Драйвер ODBC Excel] В операции должен использоваться обновляемый запрос." В файле excel изменений нет. пробовал различные комбинации со стандартными запросами UPDATE и INSERT, результат - ошибка [Microsoft][Драйвер ODBC Excel] Ошибка последовательности функций.
Заранее спасибо за помощь!
Записан
JayFOX
Гость
« Ответ #1 : Март 02, 2010, 20:59 »

Код:
db.setDatabaseName("DRIVER={Microsoft Excel Driver (*.xls)};FIL={MS Excel};READONLY=FALSE; DBQ= db.xls");
Записан
NicK
Гость
« Ответ #2 : Март 03, 2010, 09:10 »

Вот здесь есть пример:
http://www.prog.org.ru/topic_10362_0.html
Записан
vunshpunsh
Гость
« Ответ #3 : Март 04, 2010, 18:20 »

Спасибо!
Всё заработало.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.049 секунд. Запросов: 21.