Applies ToSQL Server 2008 Developer SQL Server 2008 Enterprise SQL Server 2008 Standard SQL Server 2008 Web SQL Server 2008 Workgroup SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2008 R2 Web SQL Server 2008 R2 Workgroup

"Microsoft" platina "Microsoft SQL Server 2008" 1 pakeitimų paketą (SP1) arba SQL 2008 R2 kaip vieną atsisiunčiamą failą. Kadangi pataisymai yra kumuliatyviniai, kiekviename naujame leidime yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 SP1 arba SQL 2008 R2 pataisų leidimo.

Simptomai

Apsvarstykite šį scenarijų:

  • "Microsoft SQL Server" 2008 arba "SQL Server 2008 R2" vykdote užklausą pagal konkretų lentelės stulpelį, kuriame yra daug eilučių. Užklausoje yra nuostata, sąlygojama Sąlygoje WHERE.

  • Terminas, kurį naudojate šiame PAKETE, yra žodis. "Word" pasirodo kai kuriuose stulpeliuose, kurie įtraukiami į lentelės teksto indeksą.

Šiuo atveju užklausa trunka ilgą laiką. Pavyzdžiui, ši problema gali kilti, kai vykdote šią užklausą:

SELECT count(*)FROM dbo.MyLargeTable whereCONTAINS (email_address, '"name@contoso.com"')

Pastabos

  • Tarkime, kad ". com" pasirodo kai kuriuose stulpeliuose, kurie įtraukiami į lentelės teksto indeksą.

  • Galite sekti užklausos kompiliavimo laiką, kad nustatytumėte, ar jums kyla ši problema. Išsamių instrukcijų, kaip sekti kompiliavimo laiką, ieškokite skyriuje "daugiau informacijos".

Priežastis

Ši problema kyla dėl klaidos svarbos vertinimo logikos, skirtos visos teksto indeksams. Šiuo atveju kelių stulpelių, kuriuose yra dažnai pasitaikančių žodžių, nuskaitymas atliekamas prieš susiaurinant numatytų stulpelių ieškos aprėptį.

Sprendimas

Kaupiamojo naujinimo informacija

"SQL Server 2008" 2 pakeitimų paketas

Ši problema buvo pirmą kartą išleista Kaupiamasis naujinimas 4 SQL serverio 2008 Service Pack 2. Daugiau informacijos apie šį kaupiamųjų naujinimų paketą rasite spustelėję toliau nurodytą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

2527180 "SQL Server 2008" 2 pakeitimų paketo kaupiamojo naujinimo paketas 4Pastaba Kadangi komponavimo versijos yra kumuliacinės, kiekviena nauja pataisų versija yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 pataisų leidimo. "Microsoft" rekomenduoja apsvarstyti naujausių pataisų leidimų, kuriuose yra šios karštosios pataisos, taikymą. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

2402659 SQL serverio 2008 komponavimo versijos, išleistos po "SQL Server 2008" 2 pakeitimų paketo išleidimo "Microsoft SQL Server" 2008 karštosios pataisos kuriamos konkretiems "SQL Server" pakeitimų paketams. Norėdami įdiegti "SQL Server 2008" 2 pakeitimų paketą, turite įdiegti "SQL Server 2008" 2 pakeitimų paketo karštąją pataisą. Pagal numatytuosius "SQL Server" pakeitimų pakete pateiktas karštąsias pataisas yra įtraukta į kitą "SQL Server" pakeitimų paketą.Šios problemos taisymas pirmą kartą buvo išleistas Kaupiamasis naujinimas 13. Jei norite gauti daugiau informacijos apie tai, kaip gauti šį kaupiamojo naujinimo paketą, skirtą "SQL Server" 2008 SP1, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

2497673 Kaupiamojo naujinimo paketas 13, skirtas "SQL Server 2008" 1 pakeitimų paketui Pastaba Kadangi komponavimo versijos yra kumuliacinės, kiekviena nauja pataisų versija apima visas karštąsias pataisas ir visas saugos pataisas, kurios buvo pridėtos prie ankstesnio "SQL Server" 2008 SP1 pataisos leidimo. Rekomenduojame apsvarstyti, kaip taikyti naujausią pataisų leidimą, kuriame yra šios karštosios pataisos. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

970365 SQL serverio 2008 komponavimo versijos, išleistos po "SQL Server 2008" 1 pakeitimų paketo išleidimo

"SQL Server 2008 R2" 1 pakeitimų paketas

Ši problema buvo pirmą kartą išleista Kaupiamasis naujinimas 1 SQL serverio 2008 R2 Service Pack 1. Jei norite gauti daugiau informacijos apie tai, kaip gauti šį kaupiamąjį naujinimų paketą, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

2544793 Kaupiamojo naujinimo paketas 1, skirtas "SQL Server 2008 R2" 1 pakeitimų paketuiPastaba Kadangi komponavimo versijos yra kumuliacinės, kiekviena nauja pataisų versija yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 R2 pataisų leidimo. Rekomenduojame apsvarstyti, kaip taikyti naujausią pataisų leidimą, kuriame yra šios karštosios pataisos. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

2567616 SQL serverio 2008 R2 stato, buvo paleistas po to, kai buvo išleistas "SQL Server 2008 R2" 1 pakeitimų paketas

SQL serverio 2008 R2

Šios problemos taisymas pirmą kartą buvo išleistas Kaupiamasis naujinimas 7. Jei norite gauti daugiau informacijos apie tai, kaip gauti šį kaupiamojo naujinimo paketą, skirtą "SQL Server" 2008 R2, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

2507770 "SQL Server 2008 R2" kaupiamojo naujinimo paketas 7 Pastaba Kadangi komponavimo versijos yra kumuliacinės, kiekviena nauja pataisų versija yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 R2 pataisų leidimo. Rekomenduojame apsvarstyti, kaip taikyti naujausią pataisų leidimą, kuriame yra šios karštosios pataisos. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

981356 SQL serverio 2008 R2 stato, buvo paleistas po to, kai buvo išleistas SQL Server 2008 R2

Statusą

"Microsoft" patvirtino, kad tai yra "Microsoft" produktų, išvardytų skyriuje "taikoma", problema.

Sprendimas

Norėdami išspręsti šią problemą, naudokite vieną iš šių būdų:

  • Naudokite *, kad įtrauktumėte visus stulpelius ieškoti vietoje vieno stulpelio. Tai pakeis tai, kiek eilučių iš tiesų vertinama prieš integruotame tekste ir jo svarba. Pavyzdžiui, vykdykite šią užklausą:

    SELECT count(*) FROM dbo.MyLargeTabel where CONTAINS (*, '"test@contoso.com"')
  • Padarykite, kad dažnai pasitaikančių žodžių "Word" programa "Word" būtų naudojama naudojant "ALTER FULLTEXT STOPLIST" sakinį. Jei norite gauti daugiau informacijos apie "Transact-SQL" pakeitimo FULLTEXT STOPLIST, apsilankykite šioje "Microsoft" programų kūrėjų tinklo (MSDN) svetainėje: bendrą informaciją apie Transact-SQL pakeitimo FULLTEXT STOPLIST sakinį

Daugiau informacijos

Norėdami sekti užklausos kompiliavimo laiką, atlikite šiuos veiksmus:

  1. Kai vykdote užklausą, užfiksuokite SQL Profiler pėdsakų. Norėdami tai atlikti, stebėkite "CSC: BatchCompleted" ir "CSQL": "StmtCompleted" įvykiai arba RPC: atlikta ir SP: StmtCompleted įvykiai.

  2. Pastaba paketinio procesoriaus laikas ir išrašo CPU laikas.

  3. Iš paketinio procesoriaus laiko atimti išrašo CPU laiką. Rezultatas nurodo procesoriaus laiką, kurį reikia išanalizuoti ir kompiliuoti partiją.

Jei norite gauti daugiau informacijos apie tai, kaip naudoti yra "Transact-SQL", apsilankykite šioje "Microsoft" plėtros tinklo (MSDN) svetainėje:

Kaip naudoti yra presu Transact-SQL

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.