Oprava: SELECT INTO uzamčení chování

Překlady článku Překlady článku
ID článku: 153441 - Produkty, které se vztahují k tomuto článku.
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
CHYBA Č: 14818 (DCR 6.50)
Rozbalit všechny záložky | Minimalizovat všechny záložky

Souhrn

V SQL Server 6.5 SELECT INTO obtéká v rámci transakce. Tabulky vytvořené pomocí SELECT INTO podržte vlastnosti ACID (nedělitelnost, konzistenci, izolace, trvalost) transakce. To také znamená, že systémové prostředky stránky, rozsahy a zámky, jsou uchovávány po dobu trvání příkaz SELECT INTO. S větší systémové objekty to vede k podmínce kde může být mnoho úkolů vnitřní blokovány ostatním uživatelům provádění příkazů SELECT INTO. Na serverech vysoká aktivita například může mnoho uživatelů spuštění nástroje SQL Enterprise Manager sledování systémových procesů blokovat na sebe, což vede k podmínku, kde se zobrazí SEM aplikace přestane reagovat.

Další informace

Při upgradu na SQL Server 6.5 Service Pack 1 je SELECT INTO uzamčení charakteristiky nastavitelnou funkce systému. Obtékání SELECT INTO s transakce zůstane výchozí chování. Uživatelé, kteří chtějí není podržte systému zámky katalogu na aktivitu byl přidán příznak trasování povolit takových operací. Použít příznak trasování, spusťte server s-T5302 parametr příkazového řádku nebo z okna dotazu použít následující příkazy:
dbcc traceon (3604)
go
dbcc traceon (5302)
go
				

Při použili příznak trasování 5302 a SELECT INTO selže, je stále vytvořen v tabulce. Všimněte si, že vyberete uzamčení chování použita pro všechny databáze v rámci serveru.



Je důležité pochopit, že i s trasování příznak 5302 povolena, pokud SELECT INTO je prováděna v SQL Server 6.5 v rámci kontextu explicitní transakce (t.j. BEGIN TRAN), systémové tabulky bude stále být uzamčen dokud dokončení transakce. Důvodem je, přestože příznak trasování umožňuje serveru provádět v 2 operace SELECT INTO, vytváření fáze cílové tabulky v platnosti příkaz DDL v rámci transakce.

Jakékoli příkazu CREATE TABLE v rámci transakce budou podržte EX_PAGE uzamčení v sysobjects, sysindexes a syscolumns. SQL Server 6.0 neumožňuje SELECT INTO provedeny jako část explicitní transakce definované uživatelem. Při pokusu o to vedlo 226 zpráva "SELECT INTO příkazu není povoleno v rámci transakce multi-statement".

Poznámka: Tento problém netýká, SQL Server 7.0 a vyšší.

Vlastnosti

ID článku: 153441 - Poslední aktualizace: 7. února 2014 - Revize: 3.1
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 6.5 Standard Edition
Klíčová slova: 
kbnosurvey kbarchive kbmt kbfix kbnetwork KB153441 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:153441

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com