powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с записью в БД
14 сообщений из 14, страница 1 из 1
Проблема с записью в БД
    #32243320
lgcpiton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята! Помогите в такой проблеме.
работаю с FB под FIB+? Открываю DataSet на Insert. Делаю ввод данных. Делаю Post. Эту же запись открываю на Edit, делаю изменения, опять Post. Вроде бы все нормально, но когда делаю Commit - в таблице остаются данные которые сделал во время Inserta.
В чем проблема?
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243357
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А где делаешь StartTransaction ?
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243375
lgcpiton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В самом начале при активизации формы.
Активизирую транзакцию, открываю форму ну и далее....
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243415
Фотография Johnmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверь внимательно, как прописаны связи FIBDataBase,FIBTransaction,FIBDataSet.
Отключи автоматический старт и подтверждение/откат тр-ий...
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243449
lgcpiton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В принципе связи прописаны нормально. Все связано.
В datasete отключена StartTransaction.
AutoCommit - false
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243637
Voha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может UpdateSql не правильно прописал
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243685
lgcpiton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, все нормально. Редактирование делает, а вот то, что изменилось после Insert-a не сохраняет после коммита.
такое впечатление, какбудто после Post-a, переключается в другую тр-цию,хотя проверял. Рабочая тр-ция активна....
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243694
Voha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну на сколько я понял UpdateSql срабатывет во время Поста. Кидай структуру,
UpdateSql-скрипт.
Вобщето я не работал никогда с FIB но там кажется у FIBDataSet 2 транзакции: одна на чтение другая на изменение, может туту еще могла порыться собака.
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243703
lgcpiton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот скрипт:
UPDATE T_ORDER_GOODS SET
N_GOODS_TYPE = ?N_GOODS_TYPE,
N_GOODS_MARK = ?N_GOODS_MARK,
N_COUNT = ?N_COUNT,
N_CURRENCY = ?N_CURRENCY,
N_PRICE = ?N_PRICE,
N_OLD_PRICE = ?N_OLD_PRICE,
T_USER = ?T_USER,
N_MARGIN = ?N_MARGIN,
D_USER = ?D_USER,
N_MARGIN_PR = ?N_MARGIN_PR,
N_DISCOUNT = ?N_DISCOUNT,
N_DISCOUNT_PR = ?N_DISCOUNT_PR,
N_TRMARGIN = ?N_TRMARGIN,
N_TRMARGIN_PR = ?N_TRMARGIN_PR,
N_MAINUNIT = ?N_MAINUNIT,
N_KOURS = ?N_KOURS,
D_LIFE = ?D_LIFE
WHERE
N_ID = ?OLD_N_ID
and N_ORDER_ID = ?OLD_N_ORDER_ID

ДА транзакции две, но у меня связи одинаковые, т.е. использую одну и туже
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243716
Voha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
N_ORDER_ID не генерится тригером???
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243731
lgcpiton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, передается с другой таблицы.
Генерится N_ID
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243742
Voha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Один фиг я просто не увидел N_ID
ну тогда
1.надо после вставки сделать коммит и обновить клиентский набор данных,
или
2. использовать(не знаю как точно оно наз. в FIB+) в IBX есть свойство GeneratorField в датасете.

Но для начала попробуй просто 1.
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243764
lgcpiton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это получается после каждого Inserta или Edita делать Commit?
...
Рейтинг: 0 / 0
Проблема с записью в БД
    #32243802
Voha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну если у тя поле ID заполняется тригером при, то откуда клиентскому набору знать об этом обнавлении, можно без коммита если в одной транзакции , но переоткрывать или рефрешить на клиенте данные надо .
Либо используй GanerateField в DataSet.
почитай на ibase.ru там куча всяких полезных статей. Пригодятся.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с записью в БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]