Kui SQL SERVER tabeli andmed jõuavad teatud arvuni (üle miljoni), muutub päringute täitmise ja lausete uuendamise kiirus üsna aeglaseks ning mul on sellel perioodil sageli selliseid probleeme.
Üks viis kiiruse suurendamiseks on kasutada indekseid. Täpsemalt on kaks viisi, mida selgitatakse järgmiselt:
Esimene meetod: Muuda päringu WHERE- või update-lauset ja proovi lisada indeksis olevad veerud WHERE-lausesse。 Eriti aitab veergude kaasamine koondatud indeksisse kiiremaks täitmiseks.
Teine meetod: Luua sobiv indeks päringu või uuenduslause põhjal。 Selleks tuleb kasutada SQL SERVER Query Analyzeri indeksi optimeerimise viisardit, mis analüüsib SQL-lauseid, et jõuda sobiva indeksini.
Samuti tuleb öelda, et selliste probleemide lahendamisel tuleb arvestada ühiste ja kõrvalküsimustega. Kui salvestatud protseduur täitub aeglaselt, on lisaks salvestatud protseduuri väidete optimeerimisele vajalik arvestada ka sellega, kas salvestatud protseduuris käivitatud lause käivitatud protsess tuleb samuti optimeerida, näiteks kas vastavate käivitajate laused, mis käivituvad tabeli lausete uuendamisel või lisamisel, tuleb optimeerida.
Kolmas meetod: tabelis olevad andmed enne andmete töötlemist ajutisse tabelisse asetamine.See lähenemine võib oluliselt parandada täitmise kiirust, kuid ei lahenda samaaegsuse probleemi. Väide on järgmine:
VALI * AMETLIKUST TABELIST #临时表
Neljas meetod: kasutada kiiret ainult enter-kursorit.Kui muudatusi ei ole, saad kasutada ainult Quick Enter kursorit tavalise kursori asemel, et kiirust suurendada.
Leia optimeerimispunktid ja optimeeri:
1. Täitmisplaanide kasutamine: Query Analyzeri menüü "Query -> Kuva hinnangulised täitmisplaanid"
2. Salvestusprotsessis leia see lause, mida tuleb optimeerida
3. Loo indeks Index Optimization Wizardi abil: Logi SA-ga Query Analyzerisse sisse ja mine menüüsse "Query -> Index Optimization Wizard"
|