INF: Často kladené dotazy - SQL Server 2000 - tabulky proměnné

Překlady článku Překlady článku
ID článku: 305977 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Souhrn

Tento článek zodpovídá některé často kladené dotazy (FAQ) týkající se proměnných tabulky, které jsou zavedeny v serveru SQL Server 2000.

Čtení popisu tabulky SQL Server Books Online proměnné, navštivte následující Web společnosti Microsoft:
http://msdn2.microsoft.com/en-us/library/aa260638 (SQL.80) .aspx

Další informace

Q1: Proč byly proměnné tabulka při přijímání dočasných tabulek byly již k dispozici?

A1: Proměnné Tabulka mají následující výhody oproti dočasné tabulky:
  • Jak je uvedeno v dokumentaci SQL Server Books Online "Tabulky" článek tabulka proměnné, jako jsou lokální proměnné mít dobře definovaný obor na Konec, z nichž jsou automaticky vymazány.
  • Proměnné Tabulka způsobit méně předkompilací z uložené postup než dočasných tabulek.
  • Transakce, které zahrnují poslední tabulka proměnné pouze Doba trvání aktualizace proměnné Tabulka. Proto vyžadují proměnné Tabulka méně blokování a protokolování prostředky. Vzhledem k tomu, že proměnné tabulka mít omezený rozsah a nejsou součástí databáze trvalé, nikoli vrácení transakce zpět jejich vliv.
Q2: Co to znamená že proměnných tabulky způsobit méně předkompilací uložené procedury, než při použití dočasných tabulek pomocí?

A2: Následující článek popisuje důvody při uložení postupy jsou překompilovány:

243586 Poradce při potížích s rekompilace uložených procedur
Předkompilací"z důvodu určité dočasné tabulky Operace"části jsou uvedeny také některé požadavky, aby se zabránilo jako rekompilace z důvodu dočasných tabulek. Tato omezení se nevztahují na proměnné Tabulka.

Tabulka proměnné jsou zcela izolovány do dávky vytváří jim to žádné se rozlišením "má při CREATE nebo ALTER prohlášení uskutečňuje, které mohou nastat s dočasnou tabulku. Dočasné tabulky potřebujete si řešení "tak tabulky se lze odkazovat z vnořený uloženy postup. Proměnné Tabulka předejít úplně tak můžete použít uložené procedury plán, který je již zkompilovány, tedy uložení prostředků pro zpracování uložené postup.

Q3: Jaké jsou některé z nevýhod proměnných tabulky?

A3: Zde jsou některé z nevýhod než dočasných tabulek:
  • V tabulce proměnných nelze vytvořit indexy bez clusterů jiné než systémové indexy, které jsou vytvořeny pro primární nebo UNIQUE omezení. Které mohou ovlivnit výkon dotazu ve srovnání s Dočasná tabulka s indexy bez clusterů.
  • Proměnné Tabulka nepracují, že statistické údaje, například dočasné tabulky lze. Statistiky nelze vytvořit v tabulce proměnných prostřednictvím automatické Vytvoření nebo pomocí příkazu vytvořit statistiku. Proto pro komplexní dotazy na velké tabulky chybějící statistiky může odradit optimalizace pro Určete nejlepší plán pro dotaz, tedy ovlivňovat výkon dotaz.
  • Definice tabulky nemůže být změněn po počáteční DEKLARUJTE příkazu.
  • Tabulky proměnné nelze použít v EXEC se vložit nebo vyberte DO výkazu.
  • ZKONTROLUJTE omezení, výchozí hodnoty a vypočítaného sloupce v deklarace typu tabulka nelze volat funkce definované uživatelem.
  • Nelze pomocí příkazu EXEC nebo sp_executesql uložená procedura spustit dynamické SQL Server dotaz, který odkazuje proměnné typu tabulka, pokud byla vytvořena tabulka proměnné vně příkazu EXEC nebo sp_executesql uložená procedura. Protože tabulka proměnné lze odkazovat v Místní působnost pouze, příkazu EXEC a sp_executesql uložená procedura by byla mimo rozsah tabulky Proměnná. Však můžete vytvořit tabulkové proměnné a provádět vlastní zpracování uvnitř EXEC prohlášení nebo sp_executesql uložené procedury, protože pak je oborem místní proměnné Tabulka v příkazu EXEC nebo sp_executesql uložená procedura.
Q4: Jsou proměnné tabulka jen paměti struktury, které jsou zajištěna lepší výkon než dočasné nebo trvalé tabulky, protože jsou udržována v databázi, která je umístěna na fyzickém disku?

A4: Proměnné tabulka není jen paměti strukturu. Protože tabulka proměnná může obsahovat více dat, než se vejde do paměti, má mít místo na disk ukládat data. Proměnné Tabulka jsou vytvořeny v databázi tempdb podobný dočasné tabulky. Pokud není k dispozici, paměť obě proměnné Tabulka a dočasných tabulek jsou vytvořeny a zpracovány při paměti (mezipaměť dat).

Q5: Máte použít proměnné Tabulka namísto dočasné tabulky?

A5: Odpověď závisí na tyto tři faktory:
  • Počet řádků, které jsou vloženy do Tabulka.
  • Počtu předkompilací, uložení dotazu z.
  • Typ dotazů a jejich závislost na indexy a statistické údaje o výkonu.
V některých případech porušení se dočasná uložená procedura do menších uložené procedury tak, že rekompilace provádělo v tabulkách menší jednotky je užitečné.

Obecně používejte proměnné Tabulka kdykoli je to možné, kromě případů, kdy je významný objem dat a je opakované použití tabulky. V takovém případě můžete vytvořit indexy na Dočasná tabulka pro zvýšení výkonu dotazu. Však mohou být jednotlivé scénáře různé. Společnost Microsoft doporučuje testovat Pokud se více proměnných tabulky užitečný než dočasných tabulek pro konkrétního dotazu nebo uložené postup.

Vlastnosti

ID článku: 305977 - Poslední aktualizace: 30. května 2013 - Revize: 7.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 2000 Standard Edition
Klíčová slova: 
kbinfo kbmt KB305977 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: 305977

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