4. 4. 2008
SQL Server - odstranění české diakritiky
Jak na ořezání české diakritiky v CHAR-ovém nebo VARCHAR-ovém sloupci nebo proměnné?
Přetypovat na VARCHAR stejné délky a využít toho, že např. ruská kódová stránka neobsahuje žádný znak s českou diakritikou:
SELECT CAST(Sloupec AS VARCHAR(8000)) COLLATE Cyrillic_General_CI_AS
FROM dbo.Tabulka
Příklad:
SELECT CAST('Příliš žluťoučký kůň úpěl ďábelské ódy' AS VARCHAR(8000)) COLLATE Cyrillic_General_CI_AS AS Vysledek
Vysledek
-----------------------------------------------------------
Prilis zlutoucky kun upel dabelske ody
(1 row(s) affected)
Funguje na SQL2000+.
Pozor, nefunguje pro Unicode typy NCHAR a NVARCHAR, tam by asi bylo jediné řešení napsat si funkci s konverzní tabulkou (á->a, č->c, ď->d atd.).
Štítky: SQL Server
	
			Komentáře:
			
			
 
        
	
 
<< Domovská stránka
				 
				Skvely! Jinak aby to slo pro nvarchar/nchar, staci pouze toto:
DECLARE @in nVARCHAR(100)
SET @in = 'Příliš žluťoučký kůň úpěl ďábelské ódy'
SELECT convert(varchar,@in) COLLATE Cyrillic_General_CI_AS AS Vysledek
:D
voldy
				
				
			
			
			DECLARE @in nVARCHAR(100)
SET @in = 'Příliš žluťoučký kůň úpěl ďábelské ódy'
SELECT convert(varchar,@in) COLLATE Cyrillic_General_CI_AS AS Vysledek
:D
voldy
				 
				Jen oprava :-)
DECLARE @in NVARCHAR(1000)
SET @in = 'Příliš žluťoučký kůň úpěl ďábelské ódy'
SELECT convert(varchar(1000),@in) COLLATE Cyrillic_General_CI_AS AS Vysledek
				
				
			
			
			DECLARE @in NVARCHAR(1000)
SET @in = 'Příliš žluťoučký kůň úpěl ďábelské ódy'
SELECT convert(varchar(1000),@in) COLLATE Cyrillic_General_CI_AS AS Vysledek
				 
				Jen oprava :-)
DECLARE @in NVARCHAR(1000)
SET @in = 'Příliš žluťoučký kůň úpěl ďábelské ódy'
SELECT convert(varchar(1000),@in) COLLATE Cyrillic_General_CI_AS AS Vysledek
				
				
			
			
			Okomentovat
            DECLARE @in NVARCHAR(1000)
SET @in = 'Příliš žluťoučký kůň úpěl ďábelské ódy'
SELECT convert(varchar(1000),@in) COLLATE Cyrillic_General_CI_AS AS Vysledek
Přihlášení k odběru Komentáře k příspěvku [Atom]
<< Domovská stránka
