Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 14

В чем ошибка при работе с Firebird?

20.02.2012, 21:40. Показов 1454. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.

В баттоне код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
        Form1->IBQuery1->SQL->Clear();
    Form1->IBQuery1->SQL->Add("SELECT * FROM TABLENAME");
    Form1->IBTransaction1->StartTransaction();
    try
    {
        Form1->IBQuery1->Open();
    }
    catch(Exception &error)
    {
        Form1->Memo1->Lines->Add(error.Message);
    }
    Form1->IBTransaction1->Commit();
 Комментарий модератора 
Используйте теги форматирования кода!

В таблице несколько записей, но при нажатии кнопки записи не показываются в dbgrid-е. Когда убираю Form1->IBTransaction1->Commit();, то записи показываются, но при повторном нажатии уже вылетает ошибка, что Transaction is active, но для того и использую commit, чтоб ошибка не вышла, но при commit записи не показываются. Где тут ошибка?

Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.02.2012, 21:40
Ответы с готовыми решениями:

Ошибка при работе с Firebird 2.1
Здравствуйте! Такая проблема..... Выполняю код: //Сохраняем нужные данные BookZaglavie:=trim(mBookZaglavie.Text); ...

Ошибка violation of PRIMARY or UNIQUE KEY при работе с базой Firebird (DataSnap)
Здравствуйте, уважаемые форумчане! Помогите,пожалуйста, если кто может подсказать, помочь советом.. Есть сервер DataSnap, который...

PhpWord: в чём ошибка при работе с шаблоном?
Нужно создавать документы по шаблону. Если создавать документ на пустом месте, всё проходит нормально, но тут не происходит ни сохранения...

3
117 / 74 / 6
Регистрация: 23.01.2012
Сообщений: 186
22.02.2012, 10:33
Отключите автоматическое управление транзакциями и перед строчкой
C++
1
Form1->IBTransaction1->StartTransaction();
напишите вот это:
C++
1
if(Form1->IBTransaction1->Active == true){IBTransaction->IBTransaction1->Commit();}
Добавлено через 23 часа 28 минут
Цитата Сообщение от _engineer_ Посмотреть сообщение
C++
1
if(Form1->IBTransaction1->Active == true){IBTransaction->IBTransaction1->Commit();}
Ошибочка
Написать:
C++
1
if(Form1->IBTransaction1->Active == true){Form1->IBTransaction1->Commit();}
0
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 14
22.02.2012, 12:31  [ТС]
Цитата Сообщение от _engineer_ Посмотреть сообщение
Отключите автоматическое управление транзакциями и перед строчкой
C++
1
Form1->IBTransaction1->StartTransaction();
напишите вот это:
C++
1
if(Form1->IBTransaction1->Active == true){IBTransaction->IBTransaction1->Commit();}
Добавлено через 23 часа 28 минут

Ошибочка
Написать:
C++
1
if(Form1->IBTransaction1->Active == true){Form1->IBTransaction1->Commit();}
Неудобно же каждый раз проверять актив или нет перед starttransaction.
0
117 / 74 / 6
Регистрация: 23.01.2012
Сообщений: 186
22.02.2012, 13:01
Очень даже удобно. Пример:
У Вас открыт для таблицы датасет, Вы можете перезагрузить данные в таблицы как по действию пользователя, так и по "эвенту" из базы данных. Написав один раз в функции эту проверку, Вы гарантируете, что в любой части программы не возникнет ошибка.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.02.2012, 13:01
Помогаю со студенческими работами здесь

В чем моя ошибка при работе с массивом?
Написал код для заполнения выпадающего списка Combobox.ПРивожу код model=data; ...

Глюки при работе с Firebird 2.1
Всем привет. Работаю с Firebird 2.1 через IBQuery, DataSource, DBGrid.... Такие вопросы: 1. Записываю данные в таблицы через...

При работе с Lazarus и Firebird возникли трудности
Самая простая программа. Пытаюсь вывести таблицу базу данных(.FDB) на экран. Компонент IBConnection, в котором просписан путь к базе....

Аппаратная ошибка видео (Ошибка при работе с видеоустройствами привела к некорректной работе Windows).
Аппаратная ошибка видео. Последнее время во время игры Call of Duty: Modern Warfare 2 в мультиплеер, (между сменами карт, как только...

Ошибка при изменении записи в Firebird
Работаю в C# с базой Firebird. Есть таблица с полем типа varchar, кодировкой Win1251 и установленной длинной 2000. При изменении именно в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru