Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 13630|Atbildi: 0

[Padomi] Skatīt SQL priekšrakstus SQLserver kodējuma formātā un Sqlserver salīdzināšanas kārtulas

[Kopēt saiti]
Publicēts 27.10.2016 12:50:16 | | | |
ATLASIET COLLATIONPROPERTY('Chinese_PRC_Stroke_CI_AI_KS_WS', 'CodePage')
Tālāk ir norādīti vaicājuma rezultāti.
936 ķīniešu vienkāršotā GBK
950 ķīniešu tradicionālais BIG5
437 ASV/Kanādas angļu valoda
932 japāņu
949 korejiešu
866 Krievu
65001 unikods UFT-8




Instalējot SQL SERVER 2008, jo mēs izvēlējāmies noklusējuma instalāciju, mēs to izveidojāmKad datu bāze, servera izvēlētais noklusējuma kārtošanas noteikums ir SQL_Latin1_General_CP1_CI_AS salīdzināšanas kārtula, lai, ievietojot tekstu datu tabulā, tas netiks parādīts normāli, viss ar "? tā vietā.
Tad, veidojot datu bāzi, mums manuāli jānorāda salīdzināšanas noteikums, ko var izvēlēties kā Chinese_PRC_CI_AS salīdzināšanu, kā parādīts zemāk redzamajā attēlā





Šķirošanas noteikumi:
SQLSEVER2005 izmantotās kārtošanas kārtulas ir SQL_Latin1_General_CP1_CI_AS, nevis trīs kārtošanas kārtulas, kas var pareizi parādīt vienkāršotās ķīniešu valodas rakstzīmes:
Chinese_PRC_BIN,
Chinese_PRC_CI_AS,
Chinese_PRC_CS_AS。
Apskatiet MS skaidrojumu par salīdzināšanu: Salīdzināšanas noteikumi kontrolē virkņu fizisko glabāšanu SQL Server 2005. Salīdzināšanas kārtulas norāda bitu modeli, kas attēlo katru rakstzīmi, kā arī rakstzīmju lietojuma glabāšanas un salīdzināšanas kārtulas.
Tas nozīmē, ka SQLSERVER salīdzinājums faktiski ir rakstzīmju kodējums.
Izpildot šo priekšrakstu vaicājumu analizatorā, varat iegūt visas SQL SERVER atbalstītās salīdzināšanas kārtulas.
Izvēlieties * no ::fn_helpcollations()
Salīdzināšanas nosaukums sastāv no divām daļām, pirmā daļa attiecas uz rakstzīmju kopu, ko atbalsta šī salīdzināšana.
Piemēram: Chinese_PRC_CS_AI_WS
Pirmā puse attiecas uz UNICODE rakstzīmju kopu un Chinese_PRC_refers uz vienkāršotās ķīniešu rakstzīmes UNICODE kārtošanas noteikumiem.
Salīdzinājuma otrā puse ir sufiksa nozīme:
_BIN Binārā kārtošana
_CI(CS) Vai tas ir reģistrjutīgs, CI nav jutīgs un CS ir sensitīvs
_AI (AS) Vai atšķirt akcentus, AI neatšķir, AS atšķir
_KI(KS) Vai atšķirt pseidonīmu tipus, KI to nedara, KS atšķir
_WI(WS) netiek atšķirts pēc platuma, WS nav diferencēts
Reģistrjutīga: atlasiet šo opciju, ja vēlaties, lai salīdzinājumos lielie un mazie burti tiktu uzskatīti par nevienādiem.
Atšķirt akcentus: atlasiet šo opciju, ja vēlaties, lai salīdzinājumi akcentētus un neuzsvērtus burtus uzskatītu par nevienlīdzīgiem. Ja atlasāt šo opciju, salīdzinājumā burti ar dažādiem akcentiem tiek uzskatīti par nevienlīdzīgiem.
Atšķirt Kana: Atlasiet šo opciju, ja vēlaties, lai salīdzinājums Katakana un Hiraka dienas zilbes uzskatītu par nevienlīdzīgām.
Platuma diferenciācija: atlasiet šo opciju, ja vēlaties, lai salīdzinājumā pusplatuma un pilna platuma rakstzīmes tiktu uzskatītas par nevienādām.
Pēc izpratnes par salīdzināšanas noteikumiem SQLSERVER var izdarīt šādus secinājumus par iepriekš minēto problēmu:
1. Modificējiet SQLSERVER lietotāju datu bāzi, lai atbalstītu ķīniešu rakstzīmju kopu salīdzināšanu.
2: Ķīniešu rakstzīmju parādīšanai??, bet nevēlaties mainīt kārtošanas noteikumus datu bāzē un vēlaties pareizi parādīt ķīniešu rakstzīmes, ieteicams izmantot visus Unicode tipa laukus dizainā, tas ir, tos lauku tipus, kas sākas ar N, piemēram, nChar, nVarchar, lai pareizi parādītu ķīniešu rakstzīmes.
3: Ja nevēlaties mainīt salīdzināšanas noteikumu vai mainīt lauka tipu, tad jums jāmaina SQL paziņojums, un visām ķīniešu rakstzīmēm ir jāpievieno arī N priekšā, lai to pareizi parādītu. Lūdzu, skatiet šādus divus apgalvojumus par konkrētām metodēm:
Vaicājums: atlasiet * no tb_Cust, kur FirstName=N'Wang'
Ievietot: ievietot tb_Cust(Vārds,Uzvārds,Dzimums) vērtības(N'Wang',N'Xinhao',N'Vīrietis')
Piezīmes: Nākotnē būs apgrūtinošāk modificēt servera līmeņa salīdzināšanas noteikumu pēc SQLSERVER2000, un ir nepieciešams atjaunot galveno datu bāzi.

Pašlaik jau izveidotām datu bāzēm mēs varam mainīt salīdzināšanas metodi datu bāzes rekvizītu loga opciju lapā, lai, ievietojot tekstu datu tabulā, nebūtu kļūdu ziņojumu!





Iepriekšējo:SQL nosaka, vai kolonnā ir ķīniešu vai angļu valodas rakstzīmes
Nākamo:SQL nosaka, vai kolonnā ir ķīniešu vai angļu valodas rakstzīmes
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com