![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 17.02.2010
Сообщений: 2
|
![]()
доброго времени суток =)
есть несколько вопросов, помогите пожалуйста. база на firebird, интерфейс на lazarus. связь с базой через IBConnection, Datasource, SQLTransaction, SQLQuery. Данные вывожу через dbgrid. вопросы: 1)заполняю таблицу, сохраняю изменения, но эти изменения отображаются только в редактируемой таблице. это неудобно тем, что есть еще таблицы в которых задействован выпадающий список. Вновь внесенные данные не отображаются в этом списке, пока не выйду полностью из программы и не открою ее снова. Получается транзакции закрываются полностью только при завершнии работы с программой? как сделать, чтобы они закрывались при сохранении? Переподключение к базе не помогает ![]() код сохранения: Код:
заранее спасибо за любую помощь =) |
![]() |
![]() |
![]() |
#2 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]()
1. dm.sqltransaction1.StartTransaction ; - совершенно лишняя строка.
2. Цитата:
Ничего не поделаешь, нужно все таблицы либо рефрешить (если это тэйблы), либо переоткрывать (если это квэрики). Второй вопрос - тупой, ибо вы уже сами описали процесс решения. И последнее. Вдумчиво читаем правила. А там чуть ли не первым пунктом идет - "одна тема - один вопрос"... Намек понятен ? Последний раз редактировалось mihali4; 10.03.2010 в 13:46. |
|
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 17.02.2010
Сообщений: 2
|
![]()
насчет первого вопроса. последовательность процедур такая: редактируем таблицу-> сохраняем изменения-> закрываем форму-> открываем другую таблицу и в выпадающих списках уже должны быть изменения. "кверики" переводить в false/true или close/open не помогает. как можно "переобращение" к базе сделать?
насчет второго вопроса: вы опытный программист, может мои вопросы и кажутся вам "тупыми". для меня же нет... как сделать это в теории я понимаю, а реализовать, чтобы был именно необходимый мне результат, не получается. как правило, то что знают- не спрашивают. И чем писать "тупой" - лучше бы дали простой совет. Все-таки создам новую тему со своим "тупым" вопросом, может найдутся добрые люди, которым не сложно будет помочь. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 04.04.2009
Сообщений: 438
|
![]()
У транзакций Firebird есть параметры, в т.ч. влияющие на уровень их изоляции. Если почитать про эти параметры, то можно решить проблему чтения изменений в базе, сделанных другими транзакциями. Не знаю как lazarus обходится с параметрами транзакций по умолчанию, но в вашем случае установку параметров надо брать в свои руки.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Закрытие формы.... | sergiksergik | Microsoft Office Excel | 18 | 22.09.2009 20:23 |
Закрытие формы | RIO | Общие вопросы Delphi | 2 | 27.08.2009 17:10 |
Закрытие вкладки | beemoto | Общие вопросы Delphi | 36 | 23.07.2009 23:19 |
Самый типичный пример транзакций - перевод денег с одного счета на другой. | аня741 | Помощь студентам | 1 | 20.03.2009 00:10 |
Протокол защищенных электронных транзакций Set | Nathan | Помощь студентам | 3 | 27.01.2007 16:08 |