Кто-нибудь знает, как заставить nolock намекнуть на все транзакции, выпущенные определенным пользователем? Я хотел бы предоставить логин для команды поддержки, чтобы запросить производственную систему, но я хочу защитить ее, заставляя nolock все, что они делают. Я использую SQL Server 2005.Как заставить подсказку nolock для входа в сервер sql
ответ
Это болезненный и взломанный способ сделать это, но это то, что мы делаем, где я работаю. Мы также используем классический asp, поэтому мы используем встроенные вызовы sql. мы фактически завершаем вызов sql в функции (здесь вы можете проверить конкретного пользователя) и добавьте «УСТАНОВИТЬ УРОВЕНЬ ИЗОЛЯЦИИ СТАВКИ», чтобы начать вызов.
Я считаю функционально это то же самое, что и намек на отсутствие блокировки. Извините, у меня нет чистого ответа SQL, мне было бы интересно услышать, если вы найдете хороший способ сделать это.
Вы можете создать ограниченного пользователя для команды поддержки, а затем либо написать хранимые процедуры или представления с помощью подсказки nolock. Затем разрешается только доступ к ним, а не прямой доступ к выбору таблицы.
Как только Эспо намекнул, я уверен, что нет прямого способа сделать то, что вы просите. По его словам, вы можете выполнить его, ограничив доступ пользователя только к процессам, которые имеют встроенный NOLOCK, закодированный в них.
Вы можете настроить SQL Management Studio своего поддерживающего персонала, чтобы установить уровень изоляции транзакций по умолчанию для READ UNCOMMITTED (Tools-> Options-> Query Execution-> SQL Server-> Advanced). Это функционально то же самое, что и NOLOCK.
Недостатки в том, что вам нужно будет сделать это для каждого члена вашей команды поддержки, и у них будет возможность изменить конфигурацию в своей SQL Management Studio.
К сожалению, ограничение доступа к SPs поражает цель этого. Я надеялся, что каким-то образом я могу позволить им запросить все и тем самым улучшить навыки устранения неполадок. Спасибо за помощь ребята.
ОК, вам необходимо уточнить, что вы пытаетесь сделать здесь.
Если вы пытаетесь уменьшить блокировку в базе данных и, возможно, предоставить своим пользователям поддержку данных, которые никогда не могут быть зафиксированы в базе данных. Позволяя им писать все, что они хотят в базе данных, тогда nolock - это путь. Вы получите дополнительный бонус, который ваш пользователь по-прежнему сможет увеличить уровень изоляции с помощью команды SET TRANSACTION ISOLATION LEVEL.
Если вы пытаетесь ограничить ущерб, который может возникнуть при работе с БД, посмотрите на реализацию безопасности, убедитесь, что им разрешен доступ только для чтения к вашим таблицам, и посмотрите, как удалить все доступ к сохраненным процессам и функциям.
I Find NOLOCK сильно недопонимается при переполнении стека.
- 1. SQL-сервер с подсказкой (NOLOCK)
- 2. SQL Server - как установить (nolock) подсказку по умолчанию?
- 3. Серверный NOLOCK в SQL Server
- 4. Использование nolock в sql
- 5. синтаксис NOLOCK в SQL
- 6. SQL Server NOLOCK и присоединяется
- 7. SQL Server NOLOCK для запросов запускается для авторизации
- 8. ServiceStack.OrmLite подсказка nolock в SQL Server
- 9. с (nolock), (nolock), nolock отличия?
- 10. Как заставить показывать подсказку gtk?
- 11. SQL сервер запрос на выборку с NOLOCK не работает
- 12. SQL-сервер - сбой входа пользователя.
- 13. Использование подсказки NOLOCK в EF4?
- 14. NOLOCK с Linq to SQL
- 15. Как заставить всплывающую подсказку в WPF
- 16. readcommitted и nolock lock conflict
- 17. Скопируйте ошибки схемы входа в SQL-сервер
- 18. SQL NOLOCK сервера ключевое слово
- 19. Каково практическое использование nolock в sql-сервере
- 20. Как заставить всплывающую подсказку прочитать привязку
- 21. Как заставить подсказку mdl придерживаться значка?
- 22. SQL Server 2008: как работает NOLOCK для CTE?
- 23. Как заставить IE запомнить данные для входа?
- 24. SQL 2008+ NOLOCK vs READPAST Соображения для точности отчетности
- 25. Oracle SQL: NOLOCK в статусе объединения
- 26. Ошибка входа в sql-сервер для проекта WPF C#
- 27. Entity Framework присоединяется к NOLOCK
- 28. SQL-сервер: ошибка входа во время запроса
- 29. Как использовать SqlAzureExecutionStrategy и «NOLOCK»
- 30. Как использовать завиток для входа на сервер?
Что они запрашивают в базе данных? – GateKiller 2008-09-16 11:32:44
Обычно они используют SQL Server Management Studio. Однако я знаю, что некоторые из них используют SQuirreL. – VanOrman 2008-09-16 12:57:29
Можете прояснить, что вы пытаетесь достичь здесь? Вы пытаетесь защитить данные в своей БД? – 2008-11-18 04:25:35