#asp.net #azure #azure-sql-database
#asp.net #azure #azure-sql-database
Вопрос:
Я создал Azure DB и хочу включить аудит (например, какая запись изменения пользователя, когда и т.д.), Как я могу это сделать?
Я нажимаю «Управление» и не нашел места, где я могу это сделать…
Комментарии:
1. Спросите себя, как вы могли бы выполнить это с помощью SQL Server, поскольку, скорее всего, это будет аналогичный метод.
2. @DavidMakogon-Я перехожу на вкладку администрирования базы данных и не нашел, когда я могу ее активировать…
3. Пожалуйста, отредактируйте свой вопрос, чтобы уточнить, что вы пытаетесь активировать. Из вашего комментария похоже, что вы пытаетесь использовать встроенную функцию аудита, которая существует в SQL Server (в отличие от обычных методов аудита изменений на уровне пользователя). Также: вы можете просмотреть различия между SQL Server и SQL Database здесь .
Ответ №1:
База данных SQL Azure в настоящее время не поддерживает сбор данных об изменениях (CDC), который является функцией стандартного SQL Server, предоставляющей встроенные возможности аудита. Вам нужно будет решить это требование аудита каким-либо другим способом (триггеры до / после?)
Полный набор ограничений Azure SQL DB (и отличий от стандартного SQL Server) приведен здесь: http://msdn.microsoft.com/en-us/library/azure/ff394115.aspx .
Здесь также есть более старый блог TechNet о том, как найти работоспособное решение: http://social.technet.microsoft.com/wiki/contents/articles/2976.how-to-enable-sql-azure-change-tracking.aspx
Комментарии:
1. Большое спасибо, что проголосовали! Я прочитал о триггерах DB 1. куда я должен поместить этот код? 2. Могу ли я выполнять триггеры БД для всех таблиц моей БД одновременно или мне нужно сделать это для каждой конкретной таблицы в моей БД…
2. Джон, ознакомьтесь с этим замечательным сообщением от Джона Галлоуэя о том, как добиться того, что вам нужно сделать (короткий ответ: вам нужно поместить триггеры в любую таблицу, изменения в которой вас интересуют). weblogs.asp.net/jongalloway /…