![]() |
Модераторы: Akina |
![]() ![]() ![]() |
|
lv151 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: нет Всего: 2 |
Неоднократно видел, как народ пишет, что при использовании SELECT INTO накладывается блокировка на sysobjects/syscolumns базы tempdb. Решил подробно разобраться, но не могу найти официальные доки на эту тему.
|
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20580 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 25 Всего: 454 |
А чего там разбираться? select into содержит в плане выполнения неявный create table - надеюсь, не надо объяснять, почему для его выполнения лочатся соотв. таблицы схемы?
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
lv151 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: нет Всего: 2 |
1)Объясни.
2)И почему лочатся из tempdb? 3)Актуально ли это для SQL 2005/2008/2012? Это сообщение отредактировал(а) lv151 - 26.11.2013, 11:22 |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20580 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 25 Всего: 454 |
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
lv151 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: нет Всего: 2 |
Я не нахожу там ничего про блокировки.
|
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20580 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 25 Всего: 454 |
Не, я не понимаю, ты, задав вопрос, вообще отключаешь мозг?
Вот фраза по ссылке. Первая в содержательной части.
Я даже акцентировал твоё внимание на той части предложения, где сказано о создании таблицы. И не надо быть семи пяток во лбу, чтобы понять, что дальше надо читать именно про создание таблицы. То есть про CREATE TABLE. А уже там ты найдёшь информацию по временным таблицам (по-моему, очевидно, что сначала выбранные данные куда-то кэшатся, и только по выполнении всей инструкции, если не произошло ошибки, будет создана новая таблица), где и есть ссылки на то, что и зачем лочится. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
lv151 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: нет Всего: 2 |
http://msdn.microsoft.com/ru-ru/library/ms174979.aspx нет их там p.s. раздражение - это очень плохая вещь. Это сообщение отредактировал(а) lv151 - 26.11.2013, 12:21 |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20580 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 25 Всего: 454 |
Однозначно. Вот почему я могу за пару минут находить всякую фигню типа KB162753, а ты нет? Штука, про которую ты прочитал где-то, древняя как я не знаю что, и давным-давно не вызывает проблем (посмотри, к какой версии сервера она относится, да ещё при каких условиях), но всё тащится как крокодилов хвост. Да, блокировка есть, и всегда была, и, я полагаю, всегда будет. Потому что создание таблицы - это транзакционная операция. Даже временной таблицы. Представь себе, что может случиться, если не блокировать... вот он, армагеддон-то, рядышком. Только на следующих (а для тебя - очень даже предыдущих) версиях сервера эта проблема была снята. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
lv151 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: нет Всего: 2 |
Потому-что я ещё не так хорош как ты, мне нужно много работать над собой. Какой-то очень крутой дзен... http://www.rsdn.ru/forum/db/2410861.flat Ясно. Я так понял, проблема была решена в Microsoft SQL Server 6.5. Это сообщение отредактировал(а) lv151 - 26.11.2013, 13:04 |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20580 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 25 Всего: 454 |
В 7.0 это уже перестало быть ПРОБЛЕМОЙ.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
lv151 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: нет Всего: 2 |
ок.
Спасибо! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "MS SQL" | |
|
Запрещается! Публиковать ссылки и обсуждать взлом чего бы то ни было.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | MS SQL Server | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |