powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Контроль за изверями.
4 сообщений из 4, страница 1 из 1
Контроль за изверями.
    #32054349
Anton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые спецы! Поскажите, пожалуйста, что и как можно сделать.
Есть таблица, в ней поле, туда значение пишеться из функции host_id(), т.е. это функция там стоит как значение по умолчанию.
Есть ли теперь возможность узнать какой юзверь с какой машины добавил эту запись.
Т.е. где и в каких системных таблицах что храниться?

И вообще, как подобные проблемы лучше решать? Как можно узнавать кто и откуда: добавлял, изменял и удалял записи.
...
Рейтинг: 0 / 0
Контроль за изверями.
    #32054357
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И вообще, как подобные проблемы лучше решать? Как можно узнавать кто и откуда: добавлял, изменял и удалял записи.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE TABLE ...
...
[AppName] [varchar] ( 50 ) NULL CONSTRAINT DEFAULT (app_name()),
[NtUser] [varchar] ( 25 ) NULL CONSTRAINT DEFAULT (suser_sname()),
[HostName] [varchar] ( 25 ) NULL CONSTRAINT DEFAULT (host_name()),
[Date] [datetime] NULL CONSTRAINT DEFAULT (getdate()),
...
...
Рейтинг: 0 / 0
Контроль за изверями.
    #32054373
Фотография BlackCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может это подойдет:
2 поля в таблице со значениями по умолчанию соответственно HOST_NAME(), SUSER_SNAME(). Последняя ф-я для SQL 2000. Для 7.0 кажется просто USER_NAME().

В другом случае можно навешать триггеры на вставку, удаление, изменение записи на таблицу с записью в "журнал" данных(таблица с данными по host_name и user_name и может быть какими другими необходимыми данными по конкретной записи) . Эта таблица может находиться в этой же базе или в др. К сожалению, не могу достучаться до сервера где у меня эти триггеры реализованы. Триггеры выглядят примерно так

Триггер на удаление записи
CREATE TRIGGER имя триггера_d ON <имя табл.>
FOR DELETE
AS
INSERT INTO ZRECORDS_HISTORY
SELECT <имя табл.>,GETDATE(),RECID,
host_name(),suser_sname()
FROM deleted

---Создание триггера на INSERT
CREATE TRIGGER имя триггера_i ON <имя таблицы>
FOR INSERT
AS
INSERT INTO ZRECORDS_HISTORY
SELECT <имя табл.>,GETDATE(),RECID,
host_name(),suser_sname()
FROM inserted

---Создание триггера на UPDATE
CREATE TRIGGER имя триггера_u ON
FOR UPDATE
AS
INSERT INTO ZRECORDS_HISTORY
SELECT <имя табл.>,GETDATE(),RECID,
host_name(),suser_sname()
FROM deleted

RECID может быть значение ключевого поля.
...
Рейтинг: 0 / 0
Контроль за изверями.
    #32055123
Anton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
большое спасибо всем!

а как с первой частью вопроса? или того кто добавил уже найти не возможно?
и что в каких системных таблицах есть? где можно посмотреть такую инфу?
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Контроль за изверями.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]