Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 15603|Svar: 0

[Källa] SQL Server-fält kan endast innehålla kinesiska tecken, bokstäver och siffror

[Kopiera länk]
Publicerad på 2018-12-07 13:24:31 | | | |
Eftersom du behöver fråga viss data i databasen kan fältinnehållet endast innehålla kinesiska tecken, bokstäver och siffror, och kan inte innehålla speciella symboler (förutom specialdata)
Låt oss först titta på effekterna, enligt följande:




Resurser:

Hur databas-SQL frågar ett fält med endast siffror och bokstäver eller kinesiska tecken

- Innehåller endast siffror och bokstäver

Välj kolumnnamn från tabellnamn där REGEXP_LIKE(kolumnnamn,'^([\u4e00-\u9fa5]+)$')

--innehåller endast kinesiska tecken

välj kolumnnamn från tabellnamn där length(kolumnnamn)=length(ASCIISTR(kolumnnamn))-length(replace(ASCIISTR(kolumnnamn),'\',''))


Observera: Funktionen asciistr() konverterar strängen till ett ASCII-värde, och om tecknet finns i ASCII-kodtabellen konverteras det till motsvarande tecken i ASCII; Om det inte finns några, såsom kinesiska och fullbreddstecken, konverteras det till \xxxx-format.


Length()-funktionen räknar att den kinesiska längden är 1, och det kinesiska tecknet som motsvarar lengthb() är 2 byte. Ovanstående uttalande är för att jämföra antalet kinesiska tecken med antalet \ efter att ha konverterat till ASCII-värden, om de är lika betyder det att de alla är kinesiska tecken. (Om du vill utesluta inflytandet från fullbreddssymboler måste du först ändra fältet till halvbredd, och funktionen är to_single_byte()).



sqlserver2008r2 letar efter den första positionen där icke-kinesiska alfanumeriska tal förekommer

Miljö:
Testdatabasen sqlserver2008r2 har en sorteringsmetod som Chinese_PRC_CI_AS, och jag har inte testat den i andra miljöer
Uttalande


Avkastningsvärde: 4

Min lösning

(Slut)





Föregående:Prisfrågeformulär, hur kände du till den här sidan?
Nästa:Modifiera till din egen gateway, och det interna och externa nätverket är på samtidigt förutsatt att det finns två nätverkskort
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com