Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 13630|Odgovoriti: 0

[Napitnine] Oglejte si SQL izjave v SQLserver formatu kodiranja in pravila za združevanje v SQL Serverju

[Kopiraj povezavo]
Objavljeno na 27. 10. 2016 12:50:16 | | | |
IZBERI COLLATIONPROPERTY('Chinese_PRC_Stroke_CI_AI_KS_WS', 'CodePage')
Tukaj so rezultati poizvedb:
936 kitajski poenostavljeni GBK
950 kitajski tradicionalni BIG5
437 ameriško/kanadsko angleščino
932 Japoncev
949 Korean
866 rusko
65001 unicode UFT-8




Ko smo namestili SQL SERVER 2008, ker smo izbrali privzeto namestitev, smo jo ustvariliKo je baza podatkov, je privzeto pravilo razporejanja, ki ga izbere strežnik, pravilo SQL_Latin1_General_CP1_CI_AS kolacije, tako da ob vstavljanju besedila v podatkovno tabelo ne bo prikazano normalno, vse z "? namesto tega.
Ko ustvarjamo bazo podatkov, moramo ročno določiti pravilo kolacije, ki ga lahko izberemo kot Chinese_PRC_CI_AS kolacijo, kot je prikazano na spodnji sliki





Pravila razvrščanja:
Pravila razvrščanja, uporabljena v SQLSEVER2005, so SQL_Latin1_General_CP1_CI_AS, ne pa tri pravila razvrščanja, ki lahko pravilno prikažejo poenostavljene kitajske znake:
Chinese_PRC_BIN,
Chinese_PRC_CI_AS,
Chinese_PRC_CS_AS。
Oglejte si Microsoftovo razlago kolacije: Collation Rules Control Physical Storage of Strings in SQL Server 2005. Pravila za združevanje določajo bitni vzorec, ki predstavlja vsak znak, ter pravila za shranjevanje in primerjavo uporabe znakov.
To pomeni, da je v SQLSERVERJU združevanje pravzaprav kodiranje znakov.
Z izvajanjem naslednjega stavka v analizatorju poizvedb lahko dobite vsa pravila za združevanje, ki jih podpira SQL SERVER.
Izberi * iz ::fn_helpcollations()
Ime kolektorja je sestavljeno iz dveh delov, prvi del se nanaša na nabor znakov, ki ga podpira ta poravnava.
Na primer: Chinese_PRC_CS_AI_WS
Prva polovica se nanaša na nabor znakov UNICODE, Chinese_PRC_refers pa na pravila razvrščanja poenostavljenega kitajskega znaka UNICODE.
Druga polovica kolacije je pomen pripone:
_BIN Binarno razvrščanje
_CI(CS) Ne glede na to, ali je občutljiv na velike in velike črke, CI ni občutljiv, CS pa je občutljiv
_AI (AS) Ali razlikovati med naglasi, umetna inteligenca ne razlikuje, AS razlikuje
_KI(KS) Ali razlikovati med tipi psevdonimov, KI ne, KS razlikuje
_WI(WS) ni diferenciran po širini, WS ni diferenciran
Občutljivost na velike in velike črke: Izberite to možnost, če želite primerjave, da se velike in male črke obravnavajo kot neenake.
Razlikovanje med naglasi: Izberite to možnost, če želite, da primerjave obravnavajo poudarjene in nepoudarjene črke kot neenake. Če izberete to možnost, primerjava prav tako obravnava črke z različnimi naglasi kot neenake.
Razlikuj Kana: Izberi to možnost, če želiš, da primerjava obravnava zloge katakane in Hiraka Day kot neenake.
Diferenciacija širine: Izberite to možnost, če želite, da primerjava obravnava znake pol širine in polne širine kot neenake.
Po razumevanju pravil kolacije v SQLSERVERJU lahko za zgornji problem potegnemo naslednje zaključke:
1. Prilagodite uporabniško bazo podatkov SQLSERVER za podporo združevanju kitajskih znakov.
2: Za prikaz kitajskih znakov??, vendar ne želite spreminjati pravil razvrščanja v bazi podatkov in želite pravilno prikazati kitajske znake, je priporočljivo uporabiti vsa polja tipa Unicode v zasnova, torej tista polja, ki se začnejo z N, kot so nChar, nVarchar, za pravilen prikaz kitajskih znakov.
3: Če ne želite spremeniti pravila za koliranje ali tip polja, morate spremeniti SQL stavek, za vse kitajske znake pa morate dodati tudi N, da se pravilno prikaže. Za specifične metode se prosimo oglejte naslednji dve izjavi:
Poizvedba: izberi * iz tb_Cust kjer FirstName=N'Wang'
Vstavi: vstavi tb_Cust(Ime, Priimek, Spol) vrednosti (N'Wang', N'Xinhao', N'Moški')
Opomba: V prihodnosti bo po SQLSERVER2000 bolj zahtevno spreminjati pravilo za kolidiranje na strežniški ravni, zato je potrebno ponovno zgraditi glavno bazo podatkov.

Trenutno lahko za že ustvarjene baze podatkov spremenimo tudi metodo združevanja na strani z možnostmi v oknu lastnosti baze, tako da ob vstavljanju besedila v podatkovno tabelo ne bo nobenih sporočil o napakah!





Prejšnji:SQL določa, ali stolpec vsebuje kitajske ali angleške znake
Naslednji:SQL določa, ali stolpec vsebuje kitajske ali angleške znake
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com