|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 474
|
|
Отслеживание изменений в БД10.12.2012, 13:30. Показов 5698. Ответов 49
Метки нет (Все метки)
Есть БД, к которой подключено несколько клиентов. Каждый из них имеет компоненты "DataSource", "ADOConnection" "ADOTable", "DBGrid". Тут рррраз, и в таблицу, к этому всему хозяйству привязанную добавилась строка. Как отследить это дело, чтобы его обработать? Например "DataSource" умеет обрабатывать событие "OnUpdateData". Подойдет? Как это юзать? Самый сложный вопрос: А можно ли об изменении уведомить только одного подключенного юзера?
0
|
|
| 10.12.2012, 13:30 | |
|
Ответы с готовыми решениями:
49
Отслеживание изменений отслеживание изменений |
|
78 / 78 / 6
Регистрация: 18.06.2009
Сообщений: 533
|
|
| 11.12.2012, 13:47 | |
|
Kabak,Встроенных средств нет. Можно триггеры before update, before delete на кажой таблице и в дополнение поле lastmodified типа TIMESTAMP. (это с форума)
newline, краткая документация - http://msdn.microsoft.com/ru-r... 80386.aspx извеняюсь за внешнею ссылку
0
|
|
|
78 / 78 / 6
Регистрация: 18.06.2009
Сообщений: 533
|
|
| 11.12.2012, 13:50 | |
|
Причем тут компы? это делается на стороне сервера.
0
|
|
|
4 / 4 / 0
Регистрация: 07.12.2012
Сообщений: 21
|
|
| 11.12.2012, 13:55 | |
|
Oxotnuk, ааа... понятно... Тогда точно есть
Формально, та же таблица, только по другому созданная. newline, самое неправильное было бы анализировать текстовые логи. Либо один единый лог на общем ресурсе, либо куча логов от каждого пользователя... вообще не метод ни разу
0
|
|
|
78 / 78 / 6
Регистрация: 18.06.2009
Сообщений: 533
|
|
| 11.12.2012, 13:59 | |
|
Alex_ZS, ну впринципе да, только - не изобретать велосипед, а все работает и красиво
0
|
|
|
4 / 4 / 0
Регистрация: 07.12.2012
Сообщений: 21
|
|
| 11.12.2012, 14:06 | |
|
Важно не то что бы красиво, а быстро и функционально. Запрос на выборку одной строки из таблицы изменений быстрее чем запрос на на анализ текстового лога
Аудит на MS SQL сервере - это текстовый файл. А нужно такое счастье, если необходимо просто знать, что данные в таблице изменились?
0
|
|
|
78 / 78 / 6
Регистрация: 18.06.2009
Сообщений: 533
|
|
| 11.12.2012, 14:23 | |
|
Я думаю,что в MS SQL,так как и в других СУБД - файл это выходной файл.
Оригинал это 99% таблица ![]() Просто MS SQL не щупал.
0
|
|
|
|
|
| 11.12.2012, 14:37 | |
|
Кто-нить может на русском пояснить суть этих триггеров ? понятно что они что-то далают если с базой что-то происходит (Insert, Edit и т.д.), но что именно они делают, где это фиксируется и как прочитать то что сделал триггер ?
0
|
|
|
4 / 4 / 0
Регистрация: 07.12.2012
Сообщений: 21
|
|
| 11.12.2012, 14:42 | |
|
Вообще аудит штука сильно спорная на мой взгляд. Много ограничений, сложно в настройке, и вообще зачем огород городить для очевидных вещей
"Чтобы создать, изменить или удалить аудит сервера, участникам требуется разрешение ALTER ANY SERVER AUDIT или CONTROL SERVER." - не каждому пользователю такое позволено ![]() "Администраторы компьютера с SQL Server должны учитывать, что локальные параметры журнала безопасности могут быть переопределены политикой домена." - а даже если и позволено... потом по-любому придется писать Transact-SQL... ну не стоит оно того, из пушки по воробъям... ![]() Добавлено через 2 минуты Kabak, http://msdn.microsoft.com/ru-r... 89799.aspx
1
|
|
|
|
|
| 11.12.2012, 14:43 | |
|
Я так понял, что триггер может что-то проделать с базой, например, сохранить что-нибудь в одной из таблиц по наступлению какого-то события с базой. Иными словами, MySQL сама будет вносить в служебную таблицу данные об изменениях, которые я укажу в триггере. Альтернатива триггерам - программа работающая с базой данных может сама заполнять служебную таблицу.
0
|
|
|
4 / 4 / 0
Регистрация: 07.12.2012
Сообщений: 21
|
|
| 11.12.2012, 14:45 | |
|
Kabak, "Триггер — это особая разновидность хранимой процедуры, выполняемая автоматически при возникновении события на сервере базы данных." источник выше
0
|
|
|
78 / 78 / 6
Регистрация: 18.06.2009
Сообщений: 533
|
|
| 11.12.2012, 14:53 | |
|
Alex_ZS, Аудит штука замысловатая,но очень при очень полезная,если сервер несет важну информацию.
Да и впринципе книги про аудит и тонкую его настройку - я не читал, но возводил на серверах, за день осознать принцип работы можно,и в будующем будет очень полезно ![]() Как по мне,проще один раз осознать и возвести его за 15 минут в последующие разы, чем ,вот таким способом извращаться
0
|
|
|
78 / 78 / 6
Регистрация: 18.06.2009
Сообщений: 533
|
|
| 11.12.2012, 14:57 | |
|
Kabak, для таких же целей,можно сделать шатдулер
))в mysql 5.1 появился.
0
|
|
|
4 / 4 / 0
Регистрация: 07.12.2012
Сообщений: 21
|
|
| 11.12.2012, 14:58 | |
|
Kabak, Ну раз охота пуще неволи... :-D
Тогда покопай в этом направлении: "Компания McAfee разработала открытый плагин для организации процесса аудита MySQL, позволяющего проконтролировать все действия пользователей СУБД. ... Поддерживаются ветки MySQL 5.1 и 5.5" ну и типа того что нибудь Oxotnuk, такой MS подход нагромоздить сущностей в простом месте
0
|
|
|
|
|
| 11.12.2012, 15:03 | |
|
Мне проще написать мой собственный Trigger чем разбираться с плагинами компании McAfee
![]() А именно: создам служебную таблицу и тот комп который внёс изменения в базу записывает строку в эту служебную таблицу: кто вносил изменения, когда вносил, и подписывается под этим логом, что номер компа такой-то обновился. как только все подписались - лог удаляется из служебной базы как-то так.
0
|
|
|
4 / 4 / 0
Регистрация: 07.12.2012
Сообщений: 21
|
|
| 11.12.2012, 15:14 | |
|
Kabak, 5 баллов! Я то же и пытаюсь сказать, что проще не связываться со стандартным аудитом :-D
Добавлено через 7 минут У меня есть программулина, которая динамически отслеживает параметры. Но беда в том, что она под разными базами работает (ORACLE, MS SQL, MySql, SQL Lite) Там есть именно таблица изменений и таблица логов. Прикручивать стандартный аудит нереально, плюс юзеры в больших компаниях сильно ограничены в системных правах, никто им не даст роли CONTROL SERVER
0
|
|
|
78 / 78 / 6
Регистрация: 18.06.2009
Сообщений: 533
|
|
| 11.12.2012, 15:15 | |
|
Да,но из за этого все наши системы так работаю "стабильно".
Простите не удержался
0
|
|
|
4 / 4 / 0
Регистрация: 07.12.2012
Сообщений: 21
|
|
| 11.12.2012, 15:23 | |
|
Oxotnuk,
Спасибо, напоминает прикручивание аудита!Добавлено через 4 минуты Кстати... автор темы наверное уже сам все придумал без нас
0
|
|
|
78 / 78 / 6
Регистрация: 18.06.2009
Сообщений: 533
|
|
| 11.12.2012, 15:25 | |
|
Мое дело дать вам совет(как dba работающий с огромными комплексами) а ваше,уже решать,что куда и как кому прикручивать
0
|
|
| 11.12.2012, 15:25 | |
|
отслеживание изменений Отслеживание изменений Отслеживание изменений Отслеживание изменений БД Отслеживание изменений в TextBox Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|