Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сообщение об изменениях в БД [D6, MSSQL]


Страницы:   1 2

samalex ©   (2005-02-16 12:55:00) 

Уважаемые знатоки.
У меня база MSSQL 7.0. Разные пользователи заводят данные.
Вопрос : как программе узнать, что в определенную таблицу внесены или изменены данные? Согласитесь, что проверять постоянно через запросы - это глупо и напряжно для сервера БД.
К примеру, в IB есть "POST_EVENT".
Заранее благодарен.


Ega23   (2005-02-17 14:04:00) [1]

что у тебя во всех гридах юзерских автообновление. :)

Во-во! Я тоже так подумал...


Danilka   (2005-02-17 14:01:00) [2]

[27] samalex   (17.02.05 13:32)
> Используют вовсю, только под IB.

Да я, вобщем-то, имел ввиду те "крупные задачи", что "катаются на серваке".

> По поводу необходимости

Дык, с этого и надо было начинать, а то сложилось впечатление, что у тебя во всех гридах юзерских автообновление. :)


Ega23   (2005-02-17 13:48:00) [3]

По поводу необходимости, я пишу программу вывода аварийных ситуаций, и она должна отображать на экране сообщение сразу, а не ждать нажатия клавиши.

Так бы сразу и сказал.
Создавай отдельный поток и внём пингуй сервер по таймеру. Как только аварийная ситуация - делай свои необходимые действия.


samalex   (2005-02-17 13:32:00) [4]

Danilka ©
Используют вовсю, только под IB.

По поводу необходимости, я пишу программу вывода аварийных ситуаций, и она должна отображать на экране сообщение сразу, а не ждать нажатия клавиши.

Eda23
xp_sendmail. Ты мне про эту процедуру полный хелп скинул!!! Я бы ее реализовал, но у меня SQL mail не работает ...


Danilka   (2005-02-17 12:56:00) [5]

[23] samalex   (17.02.05 12:14)
> Но только проектированием нашего SQL занимались другие люди,
> я пишу под него отдельные задачи

Просто интересно, те задачи, которые писал не ты, там есть автообновление, или нет?


Ega23   (2005-02-17 12:18:00) [6]

Отдельно, я не разу не конфигурил почту под SQL, чтобы использовать xp_sendmail. Это сложный процесс?

Я тоже никогда её не конфигурил, поэтому ответить не могу. Но то, что такая системная ХП существует - знаю.

По-поводу блокировки DLL - наверное, во время попытки перезаписи её кто-то использует. Останови всех клиентов данной DLL.


Ega23   (2005-02-17 12:16:00) [7]

Согласен с Danilka ©   (17.02.05 12:02) [22]


samalex   (2005-02-17 12:14:00) [8]

Ega23 ©
Я признателен за ценные советы по проектированию баз. Но только проектированием нашего SQL занимались другие люди, я пишу под него отдельные задачи, сам я предпочитаю Firebird?, еще я задал вопрос под № 17.

Отдельно, я не разу не конфигурил почту под SQL, чтобы использовать xp_sendmail. Это сложный процесс?


Danilka   (2005-02-17 12:02:00) [9]

[17] samalex   (17.02.05 11:40)
> Если кто что посоветует, буду признателен ...

Полное отсутствие автообновлений + кнопка "Обновить". Достаточно для 99.99% систем, начиная от мелких и заканчивая системами маштаба предприятия. Мне не веришь - спроси у тех людей, которые писали "слишком крупные задачи", "катающиеся" у вас на сервере.


Ega23   (2005-02-17 12:01:00) [10]

Когда будешь работать с крупными базами (как у меня 5.5 Гб), заговоришь по другому ...

И какая разница - крупная база или мелкая? Если грамотно идеология разработана, то извращаться ни там ни там не придётся.
А извратиться можно и на базе в 5 табличек по 100 записей в каждой...


Sergey13   (2005-02-17 12:00:00) [11]

[19] samalex   (17.02.05 11:59)
Именно поэтому и говорю именно так.


samalex   (2005-02-17 11:59:00) [12]

Sergey13 ©  
Когда будешь работать с крупными базами (как у меня 5.5 Гб), заговоришь по другому ...


Sergey13   (2005-02-17 11:43:00) [13]

2[17] samalex   (17.02.05 11:40)
>слишком крупные задачи катаются на серваке.

>Если кто что посоветует, буду признателен ...
Плюнь на это, пока те крупняки еще крутятся. А то крутиться перестанут, налетишь по крупному. 8-)


samalex   (2005-02-17 11:40:00) [14]

Ega23 ©
Спасибо за совет. Я уже думал об использовании почты под SQL, но неприятность в том, что она не настроена и никто мне настраивать ее не даст, слишком крупные задачи катаются на серваке.

Я реализовал свою задачу по-другому.
http://delphiworld.narod.ru/base/mssql_callback.html

Вроде, работает, когда посылаешь извещение отдельному клиенту. Всем не работает. Еще на сервере рождаются какие-то процессы, которые,
во-первых, посылают сообщение с новых портов,
во-вторых, блокируют Dll и не дают ее перезаписать ...

Если кто что посоветует, буду признателен ...


Ega23   (2005-02-17 09:43:00) [15]

2 Digitman ©   (17.02.05 08:29) [15]

А кто мешает ему ПОСЛЕ транзакции мэйлы рассылать? Если она удачно прошла.

А вообще всё в корне неправильно. Не так клиент-сервер надо делать...


Digitman   (2005-02-17 08:29:00) [16]


> Ega23 ©   (16.02.05 17:50) [9]


стоило ли целый талмут здесь цитировать ?)

ты упустил самое важное - вся эта петрушка гроша ломаного не стоит, потому что логика ее - "бежать вперед паровоза" : клиент, сделавший модифицирующий запрос, еще не подтвердил транзакцию (и волен ее откатить, тем самым отменив проделанные им изменения), а почта с извещением о якобы достоверности изменений уже ушла другим заинтересованным клиентам)


Anatoly Podgoretsky   (2005-02-17 07:47:00) [17]

ЮЮ ©   (17.02.05 03:49) [12]
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1108557114&n=1


Anatoly Podgoretsky   (2005-02-17 07:46:00) [18]

Arazel ©   (16.02.05 22:00) [11]
Хватит спамить


ЮЮ   (2005-02-17 03:49:00) [19]

>Arazel ©   (16.02.05 22:00) [11]

Совершенно непонятно, как данная ветка могла сподвигнуть на подовный вопрос? :) Свои вопросы надо оформлять как вопрос, а не цепляться к чужой ветке !!!


Arazel   (2005-02-16 22:00:00) [20]

А как сделать на DELPHI с ADOQuery1
Чтобы было так
Шагая по первой таблицы (DBGrid1)
а по первой табли и ключу или там индекса
показывалась во второй  таблицы (DBGrid2)
Подскажите пожалуста?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо