Форум: "Базы";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];
Внизinterbase Найти похожие ветки
← →
SergBBS (2003-02-26 13:06) [0]Здравствуйте!
Уважаемые мастера! Подскажите как обновить пользователям набор данных при изменении или добавлении одним из них записи. Используется interbase 5.5
← →
Alexandr (2003-02-26 13:12) [1]close open
← →
Smashich (2003-02-26 13:19) [2]Requery, Refresh
← →
Alexandr (2003-02-26 13:39) [3]а Interbase 5.5 лучше не использовать.
Юзай Firebird
← →
SergBBS (2003-02-26 14:29) [4]А чем плох InterBase 5.5? Или чем лучше FireBird?
← →
Smashich (2003-02-26 14:47) [5]FireBird - основан на IB6 + куча ошибок исправленно, бесплатен
← →
SergBBS (2003-02-26 14:55) [6]А чем плох InterBase 5.5? Или чем лучше FireBird?
← →
zacho (2003-02-27 10:22) [7]В 5.5 есть весьма серьезные баги, могущие привести к разрушению БД. Т.ч. использовать надо как минимум 5.6. Кстати, насколько помню, апдейт 5.5 до 5.6 был бесплатным. А насчет FB - смотри www.ibase.ru и далее по ссылкам
← →
Vladimir (2003-02-27 12:17) [8]Собственно на вопрос никто не ответил - используй IBEventAlerter. На изменение данных (удал,добав,изм) ставишь post(event), регистрируешь события в программе и отрабатываешь собственно Close Open (Refresh), как подсказывали выше.
← →
Johnmen (2003-02-27 12:28) [9]>Vladimir © (27.02.03 12:17)
Методологически - это вариант.
По жизни - весьма сомнительное мероприятие, громоздкое и глюкавое в силу оцтойности IBEventAlerter :)))
← →
Vladimir (2003-02-27 12:57) [10]>Johnmen ©
Согласен, немного стоит приложить руки к нему. Апдейты там поставить... Да и после них надо напильником поработать. А так вобщем-то совсем даже ничего.
← →
Roki (2003-02-27 13:01) [11]Я вот делаю как Вы посоветовали close open у IBDataSet , а обновления я не вижу...Хотя в БД они лежат. CommitRetaining использую. Почему программа не получает данные с сервера при close open?
← →
Johnmen (2003-02-27 13:08) [12]Получает.
Видимо не выставлены параметры транзакции. Даблклик на IBTransaction...
← →
Roki (2003-02-27 13:23) [13]2 Johnmen ©
Спасибо, опять меня выручил.
О сделал:
read_committed
rec_version
nowait
заработало.
← →
SergBBS (2003-02-27 14:53) [14]Я вот по поводу IBEventAlerter. Нашел в примерах его использование, а там еще стоит компонент TStoredProc. Насколько я понимаю в базе должна быть какая-то процедура. А как ее туда засунуть я не понимаю (делается это с помощью сервера InterBase или с помощью какого-то компонента в Delphi или еще как). Я вот читал документацию по серверу Interbase и там все сплошь одни операторы, которые выполняются с помощью Sql Explorer-а, а как это применить в програмке на Delphi? Может кто-нибудь объяснит ?
← →
Desdechado (2003-02-27 15:53) [15]через компоненты типа TQuery
← →
Vladimir (2003-02-27 16:19) [16]
> там еще стоит компонент TStoredProc
Там это где??? В базе ставишь на триггере
post_event("ME_EVENT");
В событиях Alerter"а пишешь те же самые строки. При чем здесь StoredProc?!
← →
SergBBS (2003-02-27 16:33) [17]Vladimir! Я наверное чего-то не понимаю, объясни как в базе поставить триггер. Пожалуйста!
← →
Vladimir (2003-02-27 17:28) [18]Таблица
TABLE1(
rec integer not null primary key,
name varchar(10))
ГенераторGEN_TABLE1_REC
Триггер на вставку записи в базу: присваивает автоинкрементом поле REC, NAME пишет имя пользователя, делающего вставку, вызывает событие "new_in_table1":
CREATE TRIGGER TABLE1_BI FOR TABLE1
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
NEW.REC = GEN_ID(GEN_TABLE1_REC,1);
NEW.NAME=user;
post_event("new_in_table1");
END
Пробуй.
← →
SergBBS (2003-02-28 09:14) [19]Vladimir!
Прости меня за глупый вопрос, но как применить данный код: через интерактивный sql на сервере или через компонент Query.
← →
Johnmen (2003-02-28 09:29) [20]>SergBBS (28.02.03 09:14)
Примеры применения и указанного кода и других кодов есть в SQL Reference Help, и заглянуть туда проще и быстрее, чем сюда...
← →
Sergey13 (2003-02-28 09:44) [21]2SergBBS (28.02.03 09:14)
Ты меня извини конечно, тезка, но (судя по твоим вопросам) брось ты на фиг заниматься тем вопросом,с которого начал ветку. Отложи годика на два. Тем паче что конечный результат ну о-о-о-очечень сомнителен. Поверь.
Без знаний арифметики алгебры не поймешь.
← →
Vladimir (2003-02-28 10:42) [22]> Sergey13 © Не смущай человека, начинать-то надо с чего-то.
SergBBS
Совет насчет заглянуть в SQL-Ref не стоит отвергать, однако...
Когда речь идет об изменении метаданных (структуры БД), то это либо скрипт, либо iSQL (что, в принципе, одно). Про сторонние компоненты речи нет.
Здесь тебе необходимо произвести изменение структуры БД - поставить триггер на изменения в таблице. Что такое триггер, более точно прочитай в справке. Create trigger выполняется в iSQL.
← →
Johnmen (2003-02-28 10:47) [23]>Vladimir © (28.02.03 10:42)
>> Sergey13 © Не смущай человека, начинать-то надо с чего-то.
Ну да, давай начнем изучение с вопросов в форумы...:)
← →
SergBBS (2003-02-28 11:17) [24]Большое спасибо за ваши ответы, но не надо из-за меня начинать перепалку.
← →
MsGuns (2003-02-28 11:17) [25]Очень рекомендую IBExpert - хорошая вещь.
www.ibexprt.com
Там все доходчиво и красиво (в стиле IDE Delphi).
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.008 c