INF: Často kladené otázky - SQL Server 2000 - premenné tabuľky

Preklady článku Preklady článku
ID článku: 305977 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

Súhrn

Tento článok obsahuje niektoré z často kladené otázky (FAQ) súvisiace tabuľky premenných, ktoré sú zavedené v SQL Server 2000.

Prečítajte si popis tabuľky SQL Server Books Online premenné, navštívte nasledovnú webovú lokalitu spoločnosti Microsoft:
http://msdn2.Microsoft.com/en-us/library/aa260638 (SQL.80) .aspx

Ďalšie informácie

Q1: Prečo boli zavedené tabuľka premenných pri dočasných tabuliek boli už k dispozícii?

A1: Tabuľka premenné majú nasledovné výhody nad dočasné tabuľky:
  • Ako je uvedené v SQL Server Books Online "Tabuľky" článku, tabuľka premenných, ako lokálne premenné, majú dobre definovaný rozsah v koniec, ktoré budú automaticky vymazané.
  • Tabuľka premenné za následok menej prekompilovávaní z uložených postup v porovnaní s dočasným tabuľkám.
  • Transakcie, ktoré zahŕňajú tabuľky premenných naposledy len pre Trvanie aktualizáciu tabuľky premennú. Preto bude potrebné premenné tabuľky menej zamykanie a zapisovanie do denníka zdrojov. Pretože tabuľka premenné majú obmedzený rozsah a nie sú súčasťou databázy perzistentné, transakcií rollbacks nie ovplyvniť ich.
Q2: Čo to znamená vyslovením, že tabuľka premenných v dôsledku menej prekompilovávaní z uloženej procedúry ako dočasné tabuľky, keď sa používajú?

A2: Článok popisuje niektoré z dôvodov, pri skladovaní postupy sú prekompilovat:

243586 Riešenie problémov recompilation uložené procedúry
"Prekompilovávaní z určitej dočasnej tabuľky Operácie"sekcia tiež uvádza niektoré požiadavky sa vyhnúť, ako rekompiláciou kvôli dočasným tabuľkám. Tieto obmedzenia sa nevzťahujú na premenné tabuľky.

Tabuľka premenné sú úplne izolovaný na dávku že im vytvorí tak nie ste riešenie "má nastať pri CREATE alebo ALTER vyhlásenie sa uskutoční, ktoré môžu nastať s Dočasná tabuľka. Dočasných tabuliek Toto si rozlíšenie je potrebné "takže tabuľku možno odkazovať z vnorených uložené postup. Premenné tabuľky vyhnúť úplne tak použiť uložené procedúry plán, ktorý je už zostavené, čím šetrí prostriedky na spracovanie uložené postup.

Q3: Aké sú niektoré z nevýhod premenné tabuľky?

A3: To sú niektoré z nevýhod v porovnaní s dočasným tabuľkám:
  • Non-skupinový indexov sa nedá vytvoriť na premenné tabuľky, iné ako systémové indexy, ktoré sú vytvorené pre primárne alebo unikátny obmedzenie. Ktoré môžu ovplyvniť výkon dotazu v porovnaní s Dočasná tabuľka s non-skupinový indexy.
  • Premenné tabuľky udržiavať štatistiky ako dočasné tabuľky môžete. Štatistiky sa nedá vytvoriť na premenné tabuľky prostredníctvom automatického Vytvorenie alebo pomocou príkazu vytvoriť štatistiky. Preto, pre komplexné dotazy na veľké tabuľky, nedostatok štatistických údajov môže odradiť pre optimalizáciu určiť najlepší plán pre dotaz, čo ovplyvnilo výkonnosť dotaz.
  • Definícia tabuľky nie je možné zmeniť po počiatočnom VYHLÁSIŤ vyhlásenie.
  • Premenné tabuľky nemožno použiť v EXEC vložiť alebo vybrať DO výkazu.
  • Skontrolujte obmedzenia, predvolené hodnoty a vypočítané stĺpce Deklarácia typu tabuľky nemôžete volať používateľom definované funkcie.
  • Nemôžete použiť príkaz EXEC alebo sp_executesql uložené postup spustiť dynamický SQL Server dotaz, ktorý odkazuje Tabuľka premenné, ak premenná tabuľka bola vytvorená mimo EXEC vyhlásenie alebo sp_executesql uložená procedúra. Pretože tabuľka premenné je možno odkazovať vo a ich lokálny rozsah, príkazu EXEC sp_executesql uložené postup bude mimo rozsah tabuľky premenná. Však môžete vytvoriť tabuľku premennej a vykonávať všetky spracovanie vnútri EXEC vyhlásenie alebo sp_executesql uložená procedúra, pretože potom tabuľku premenné lokálny rozsah je v príkazu EXEC alebo sp_executesql uložená procedúra.
O4: Aké premenné tabuľky pamäte-len štruktúry, ktoré sú istí, lepší výkon v porovnaní s dočasné alebo trvalé tabuľky, pretože sú udržiavané v databáze, ktorá sa nachádza na fyzickom disku?

A4: Tabuľka premenné nie je iba na pamäťovú štruktúru. Pretože tabuľka premenná môže mať viac údajov, než sa zmestí do pamäte, má mať miesto disk pre ukladanie dát. Premenné tabuľky sú vytvorené v tempdb databáza podobná dočasným tabuľkám. Ak pamäte je k dispozícii, obe tabuľky premenných a dočasným tabuľkám sú vytvárané a spracovávané kým v pamäť (cache údajov).

Q5: Mám použiť tabuľku premenné namiesto dočasných tabuliek?

A5: Odpoveď závisí na tieto tri faktory:
  • Počet riadkov, ktoré sa vkladajú do Tabuľka.
  • Počet prekompilovávaní je uložený dotaz z.
  • Typ otázky a ich závislosti na indexy a Štatistika výkonnosti.
V niektorých situáciách prelomenie uloženej procedúry s dočasné tabuliek do menších uložené procedúry tak že recompilation prebieha menšie jednotky je užitočná.

Vo všeobecnosti používate premenné tabuľky kedykoľvek je to možné, okrem prípadov, keď existuje významný objem dát a tam je opakované použitie tabuľky. V takom prípade môžete vytvoriť indexy na Dočasná tabuľka zvýšiť výkon dotazu. Avšak, môže byť každý scenár rôzne. Spoločnosť Microsoft odporúča, že ste test, ak tabuľka premenné sú viac ako užitočné dočasným tabuľkám ku konkrétnemu dotazu alebo uloženej postup.

Vlastnosti

ID článku: 305977 - Posledná kontrola: 30. mája 2013 - Revízia: 3.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft SQL Server 2000 Standard Edition
Kľúčové slová: 
kbinfo kbmt KB305977 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem: 305977

Odošlite odozvu

 

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