[ dc43 @ 18.09.2005. 22:01 ] @
Napisao sam funkciju u Transact-SQL jeziku koja konvertuje string napisan na latinici u string napisan na ćirilici. Dajem dozvolu svima da koriste ovu funkciju u svojim programima. Jedino tražim da mi javite o tome, ali nije obavezno. Bilo bi mi drago da čujem gde je bila od koristi. Od velike je važnosti da na SQL Serveru, ili na samoj bazi u kojoj se funkcija pravi i koristi, bude postavljen COLLATION koji je CASE SENSITIVE. Ako se to ne uradi onda funkcija vraća lower case ćiriličnu verziju ulaznog stringa. Collation je ono što određuje kako se stringovi sortiraju i upoređuju. Za bazu možete modifikovati Collation na sledeći način. ALTER DATABASE NazivBaze COLLATE Croatian_CS_AS_KS_WS "Croatian_CS_AS_KS_WS" je iskorišćen samo kao primer, najvažnije je da je CS (case sensitive). Funkcija je osetljiva na veličinu slova (letter case). Kada su u pitanju slova "lj", "nj" i "dž", jedino oba mala slova se prevode u malo ćirilično slovo (lj -> lj, Lj -> Lj, lJ -> Lj, LJ -> Lj). Karakteri koji ne spadaju u latinicu se prenose neizmenjeni. Pošto poruke na forumu automatski bivaju konvertovane u latinicu, nisam stavio code, jer ne bi imalo smisla. Prikačio sam fajl koji sadrži CREATE FUNCTION script. Fajl u kom se nalazi ova funkcija mora biti snimljen sa encodingom Unicode (UTF-8). Nisam siguran koliko je ovo korisna funkcija, ali poznajem neke ljude koji bi rekli da je efikasnije nego kada bi se podaci prvo izvukli, izmenili i onda snimili nazad, koristeći neki programski jezik kao što je C#. Ja nisam još testirao, ali kada budem, objaviću rezultate. JavaScript verzija funkcije je prvo nastala. http://www.elitesecurity.org/tema/135980 Potom C# verzija. http://www.elitesecurity.org/tema/136000 [Ovu poruku je menjao dc43 dana 18.09.2005. u 23:26 GMT+1] |