Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2014, 13:03   #1
subbota
Пользователь
 
Аватар для subbota
 
Регистрация: 26.07.2009
Сообщений: 98
По умолчанию работа с IBtransaction

Добрый день, прошу строго не судить я новичок...
я хочу сделать следующие:
через ibquerygrid я вывожу записи БД в dbgrid - для просмотра, а через ibquerypaste Хочу добавлять данные в БД.

Во общем я не знаю как это сделать что-бы работало..я так понимаю что при добавление записи я должен сначала открывать а потом закрывать соответствующую транзакцию и для просмотра(вывода) данных в dbgrid тоже должна открываться а потом закрываться уже другая транзакция...
Как это сделать с чего начать...
Изображения
Тип файла: jpg скрин.jpg (30.1 Кб, 118 просмотров)
Жили мы бедно, а потом нас обокрали.
subbota вне форума Ответить с цитированием
Старый 04.03.2014, 15:02   #2
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Транзакции в InterBase и Firebird
Прик вне форума Ответить с цитированием
Старый 04.03.2014, 15:29   #3
subbota
Пользователь
 
Аватар для subbota
 
Регистрация: 26.07.2009
Сообщений: 98
По умолчанию

Цитата:
Сообщение от Прик Посмотреть сообщение
я это уже читал - не понятно.., сейчас еще раз прочту...
Жили мы бедно, а потом нас обокрали.
subbota вне форума Ответить с цитированием
Старый 04.03.2014, 16:28   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
я так понимаю что при добавление записи я должен сначала открывать а потом закрывать соответствующую транзакцию
Не обязательно. Просто свяжи IBQuery и IBTransaction и посылай запросы. Потом не забудь вызвать метод commit и связка эта сама сработает как надо.
Отдельно транзакции открываются как правило только в хранимых процедурах. Для клиента же это не существенно. Там зависит от настроек (кажись, или от провайдера) - на одну команду одна транзакция, которая сама открывается и сама закрывается.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.03.2014, 17:30   #5
subbota
Пользователь
 
Аватар для subbota
 
Регистрация: 26.07.2009
Сообщений: 98
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Не обязательно. Просто свяжи IBQuery и IBTransaction и посылай запросы. Потом не забудь вызвать метод commit и связка эта сама сработает как надо.
Отдельно транзакции открываются как правило только в хранимых процедурах. Для клиента же это не существенно. Там зависит от настроек (кажись, или от провайдера) - на одну команду одна транзакция, которая сама открывается и сама закрывается.
то есть допустим для вывода данных в dbggrid я использую dbquery1, вопрос - для добавления данных в бд мне использовать этот же dbquery1 или другой и другой IBtransaction.
Жили мы бедно, а потом нас обокрали.
subbota вне форума Ответить с цитированием
Старый 04.03.2014, 18:16   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну можно и этот, но тогда грид будет моргать, ведь тебе придется на время выполнения запроса его отцеплять от компонента.
А если использовать другой то потом все равно грид нужно переобновлять.
По идее можно настроить так, чтоб данные вводились в сам грид и формировался нужный запрос, но я так никогда не делал. И вообще не использую DBGrid нигде и никогда.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.03.2014, 09:34   #7
superedward
Форумчанин
 
Аватар для superedward
 
Регистрация: 27.11.2012
Сообщений: 190
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
И вообще не использую DBGrid нигде и никогда.
Эт точно, DBGrid морально устарел - выглядит довольно убого, что внешне, что по функциональности. Но вполне сойдёт для дипломной/курсовой. Для серьёзного проекта лучше перейти на более совершенные компоненты (типа DbGridEh).

Последний раз редактировалось superedward; 05.03.2014 в 09:36.
superedward вне форума Ответить с цитированием
Старый 05.03.2014, 09:36   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Эт точно, DBGrid морально устарел
Расскажите это пользователям, которым удобно работать с ним без всяких штучек-дрючек-приморочек
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 05.03.2014, 09:58   #9
superedward
Форумчанин
 
Аватар для superedward
 
Регистрация: 27.11.2012
Сообщений: 190
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Расскажите это пользователям, которым удобно работать с ним без всяких штучек-дрючек-приморочек
Пользователи работают так, как привыкли, и называют это удобным, если это чертовски неудобно.
Пользователю нужен не просто набор данных, нужны сортировка (порой многоуровневая), группировка и итоги (суммы и количество).
superedward вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
IBTransaction пауэрлифтинг БД в Delphi 3 27.05.2010 09:17
Правильное использование IBTransaction Sparky БД в Delphi 0 23.05.2010 18:40
Задача. Работа с псевдослучайными последовательностями (ПСП). Работа с цветом. 0101 Помощь студентам 3 17.12.2009 23:57
IBTransaction r00xus БД в Delphi 7 14.02.2008 17:33