Įvadas
Numatytasis sulyginimas yra labai svarbi SQL serverio dalis, kuri nustato, kaip eilučių duomenys lyginami ir rūšiuojami, kai jie saugomi ir nuskaitomi duomenų bazėje. Skirtingos rūšiavimo taisyklės gali lemti skirtingus rezultatus, ypač dirbant su daugiakalbiu tekstu. Todėl žinojimas, kaip modifikuoti šiuos sugretinimus, bus labai naudingas kuriant duomenų bazes ir apdorojant duomenis. Šiame straipsnyje bus išsamiai aprašyta, kaip modifikuoti numatytąjį sulyginimą SQL serveryje, ir pateikti kodo pavyzdžiai.
Kas yra sugretinimo taisyklė?
Lyginimas apibrėžia simbolių rinkinį, palyginimo taisyklę ir simbolių duomenų sugretinimo taisyklę SQL serveryje. Kiekviena rūšiavimo taisyklė gali valdyti:
- Kaip koduojami simboliai (pvz., UTF-8, ASCII ir kt.)
- Didžiųjų ir mažųjų raidžių jautrumas (pvz., "A" ir "a" laikomi lygiais arba nevienodais)
- Kirčio jautrumas (pvz., kaip apdorojama "é" ir "e")
Palyginimų pavyzdžiai
SQL serveryje sugretinimo pavadinimas paprastai susideda iš šių dalių:
{simbolių rinkinys}_{gretinimas}_{jautrumas} Pavyzdžiui, SQL_Latin1_General_CP1_CI_AS, kur:
- SQL_Latin1_General yra simbolių rinkinys
- CP1 yra kodų puslapis
- CI reiškia didžiąsias ir mažąsias raides
- AS reiškia "Accent Sensitive"
Peržiūrėti dabartines duomenų bazės sugretinimo taisykles
SQL sakinys atrodo taip:
Rezultatus:Chinese_PRC_CI_AS
Modifikuoti numatytąjį sulyginimą
SQL serveryje galite modifikuoti numatytąjį sulyginimą šiais būdais:
- Nustatyti duomenų bazių sugretinimo taisykles.
- Nustatyti konkrečių stulpelių sugretinimo taisyklę.
- Modifikuoti numatytąsias viso serverio sugretinimo taisykles.
1. Nustatykite duomenų bazės sugretinimo taisykles
Jei kuriant naują duomenų bazę reikia nustatyti numatytąjį sulyginimą, galite naudoti šį SQL sakinį:
Jei duomenų bazė yra ir jums reikia modifikuoti numatytąjį sulyginimą, galite naudoti šią komandą:
Tai modifikuoja numatytąjį MyDatabase duomenų bazės sugretinimą.
2. Nustatykite konkrečių stulpelių rūšiavimo taisykles
Kai kuriais atvejais tam tikram stulpeliui galite naudoti skirtingas sugretinimo taisykles. Tokiu atveju galite nurodyti sugretinimą kurdami lentelę:
Aukščiau pateiktas kodas sukuria lentelę pavadinimu MyTable, kurioje stulpelyje Pavadinimas naudojamas didžiųjų ir mažųjų raidžių sugretinimas.
3. Pakeiskite numatytąsias viso serverio sulyginimo taisykles
Numatytojo serverio sulyginimo keitimas yra jautri operacija. Prieš tai darydami įsitikinkite, kad suprantate, kokį poveikį tai gali turėti. Norėdami pakeisti numatytąjį serverio sulyginimą, naudokite šią komandą:
Pakeitę numatytąjį serverio sugretinimą, turite iš naujo paleisti SQL serverio egzempliorių, kad pakeitimai įsigaliotų.
Lyginimų būsenos grafikas
Toliau pateiktoje būsenos diagramoje parodytos skirtingos SQL serverio sugretinimo būsenos ir pakeitimai:
Paraiškos pavyzdys
Štai keletas taikymo scenarijų, padėsiančių suprasti sugretinimo taisyklių svarbą kuriant duomenų bazę:
- Daugiakalbis palaikymas: daugiakalbėse programose gali reikėti nustatyti konkrečių kalbų gretinimą. Pavyzdžiui, raidė "ñ" ispanų kalba gali būti tvarkoma skirtingai pagal skirtingas rūšiavimo taisykles.
- Vartotojo apibrėžti duomenys: vartotojo įvestuose duomenyse gali būti skirtingų didžiųjų raidžių ir kirčio ženklų. Tokiu atveju tinkamas lyginimas gali užtikrinti, kad vartotojai gautų norimus rezultatus ieškodami ir lygindami.
- Duomenų perkėlimas: perkeliant duomenis iš vienos sistemos į kitą, svarbu užtikrinti, kad tikslinės duomenų bazės sugretinimas atitiktų šaltinio duomenų bazę, kad būtų išvengta duomenų neatitikimų.
Išvada
SQL serveryje tinkamas numatytųjų sugretinimo taisyklių konfigūravimas ir modifikavimas yra svarbi duomenų bazės kūrimo dalis. Tai ne tik turi įtakos duomenų saugojimui ir gavimui, bet ir tiesiogiai veikia programos vartotojo patirtį. Naudodamiesi šiame straipsnyje pateiktais kodo pavyzdžiais ir išsamiais paaiškinimais, tikiuosi, kad giliau suprantate lyginimo taisyklių sąvoką ir kaip jas modifikuoti. Prieš įgyvendindami šiuos pakeitimus, būtinai sukurkite atsarginę kopiją ir atitinkamai išbandykite, kad užtikrintumėte savo duomenų vientisumą ir saugumą.
Nuoroda:Hipersaito prisijungimas matomas. |