Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Уровень изоляции для пользователя  [new]
de_noel
Member

Откуда:
Сообщений: 40
Добрый день!
Извините пожалуйста за дурацкий вопрос, но очень хотелось бы уточнить:
я правильно понимаю,что задать уровень изоляции можно только сеансу?
Проблема вот в чем: есть пользователь(сторонняя организация), который сам пишет у себя процедуры, функции и т.п. к нашей базе и не задает при этом для сеанса режим грязного чтения, а потом жалуется,что бывают моменты, когда данные недоступны (у нас периодически идет массовое обновление данных) и возник вопрос: можно ли как-то с нашей стороны задать этот режим чтения?
26 сен 11, 11:20    [11335162]     Ответить | Цитировать Сообщить модератору
 Re: Уровень изоляции для пользователя  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
RCSI?

Ну или научите его писать одну заветную строчку. Надоест жаловаться - будет указывать.
26 сен 11, 11:32    [11335283]     Ответить | Цитировать Сообщить модератору
 Re: Уровень изоляции для пользователя  [new]
Ken@t
Member

Откуда: 大地
Сообщений: 3265
de_noel,

Обоим прочитать про SNAPSHOT изоляцию и про разные хинты в запросах куда плолезнее , чем искать мифическое
автор
нашей стороны задать этот режим чтения
26 сен 11, 11:34    [11335296]     Ответить | Цитировать Сообщить модератору
 Re: Уровень изоляции для пользователя  [new]
iljy
Member

Откуда:
Сообщений: 8711
de_noel,

ага, а потом пользователь будет жаловаться на мистическую ошибку Data was moved.... Удачи.
26 сен 11, 11:39    [11335357]     Ответить | Цитировать Сообщить модератору
 Re: Уровень изоляции для пользователя  [new]
de_noel
Member

Откуда:
Сообщений: 40
iljy,

я полностью поддерживаю, чтобы задавал уровень изоляции сам пользователь. Но надо начальству объяснить
26 сен 11, 11:48    [11335450]     Ответить | Цитировать Сообщить модератору
 Re: Уровень изоляции для пользователя  [new]
de_noel
Member

Откуда:
Сообщений: 40
Гавриленко Сергей Алексеевич,

Спасибо, да, придется учить писать 1 строку
26 сен 11, 11:52    [11335484]     Ответить | Цитировать Сообщить модератору
 Re: Уровень изоляции для пользователя  [new]
Glory
Member

Откуда:
Сообщений: 104751
de_noel
iljy,

я полностью поддерживаю, чтобы задавал уровень изоляции сам пользователь. Но надо начальству объяснить

BOL

READ COMMITTED is the default isolation level for the Microsoft SQL Server Database Engine. If an application must operate at a different isolation level, it can use the following methods to set the isolation level:

- Run the SET TRANSACTION ISOLATION LEVEL statement.

- ADO.NET applications that use the System.Data.SqlClient managed namespace can specify an IsolationLevel option by using the SqlConnection.BeginTransaction method.

- Applications that use ADO can set the Autocommit Isolation Levels property.

- When starting a transaction, applications using OLE DB can call ITransactionLocal::StartTransaction with isoLevel set to the desired transaction isolation level. When specifying the isolation level in autocommit mode, applications that use OLE DB can set the DBPROPSET_SESSION property DBPROP_SESS_AUTOCOMMITISOLEVELS to the desired transaction isolation level.

- Applications that use ODBC can set the SQL_COPT_SS_TXN_ISOLATION attribute by using SQLSetConnectAttr.
26 сен 11, 11:58    [11335560]     Ответить | Цитировать Сообщить модератору
 Re: Уровень изоляции для пользователя  [new]
de_noel
Member

Откуда:
Сообщений: 40
Glory,

Да, это понятно, но весь вопрос состоял в том могу ли я на что-то повлиять (как владелец БД), к сожалению приложение пишет другая компания и по сути это их проблемы, но мало ли я что-то пропустила и теперь можно задавать не только для сеанса или приложения. Спасибо!!!!
26 сен 11, 12:02    [11335589]     Ответить | Цитировать Сообщить модератору
 Re: Уровень изоляции для пользователя  [new]
Glory
Member

Откуда:
Сообщений: 104751
de_noel
Да, это понятно, но весь вопрос состоял в том могу ли я на что-то повлиять (как владелец БД),

Еще раз
READ COMMITTED is the default isolation level for the Microsoft SQL Server Database Engine. - Всего Engine. Т.е. речи не идет о каких то настройках уровня базы и вообще о каких то настройках

If an application must operate at a different isolation level, it can use the following methods to set the isolation level - Тот кому нужен другой ТИЛ и должен что-то делать
26 сен 11, 12:08    [11335644]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить