სტრინგის ტრანსლირება ორაკლში

მაგალითი თუ როგორ არის შესაძლებელი ორაკლში შრიფტის კონვერტირება (ჩვენს მაგალითში ლათინურიდან უნიკოდში) ვარიანტი 1 –
ამის შესაძლებლობის 2 ვარიანტია 1- სადისტურ-მაზოხისტური, 2 – ორაკლისეული ადამიანური 😀
სადისტურ-მაზოხისტურში ვიგულისხმე ვარიანტი სადაც 2 სვეტიან ცხრილში გვაქვს ჩამოთვლილი ლათინური სიმბოლოები შესაბამისი ქართული უნიკოდით. ფუნქციაში ვიღებთ ამ ცხრილს და დასაკონვერტირებელ სტრინგს, ვუვლით სიმბოლ სიმბოლ და ვანაცვლებთ ცხრილში არსებულით და ვაწყობთ ახალ სტრინგს და ვგულაობთ ( 😀 ) მაგრამ ეს რა დოზანაა 🙂 გაიფიქრა მეორემ ეგ ხო უფრო მარტივად შეიძლებაო ანუ translate ფუნქციის გამოყენებით. მაგალითი –
[cc lang=”sql”]
SELECT translate(‘aleqsandre’, ‘abgdevzTiklmnopJrstufqRySCcZwWxjh’,’აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰ’) FROM dual;
–result: ალექსანდრე
[/cc]

მოკლედ ეს ყველაფერი შეგვიძლია გავუშვათ ფუნქციაში და მერე მართლა “გულიაი ბანდა” 😀

[cc lang=”sql”]
CREATE OR REPLACE FUNCTION LAT2UTF(TEXT VARCHAR2) RETURN VARCHAR2 IS
BEGIN
RETURN TRANSLATE(TEXT,
‘abgdevzTiklmnopJrstufqRySCcZwWxjh’,
‘აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰ’);
END;
[/cc]
და საჭიროების შემთხვევაში მას ვიყენებთ ასე

[cc lang=”sql”]
select lat2utf(‘blogi’) from dual;
–result: ბლოგი
[/cc]

იმ შემთხვევაში თუ სიმბოლოს თარგმანი არ გვაქვს
[cc lang=”sql”]
select lat2utf(‘blogi205’) from dual
–result: ბლოგი205
[/cc]

ეს არის და ეს. წარმატებულ ტრანსლირებას გისურვებთ.

4 comments on “სტრინგის ტრანსლირება ორაკლში

  1. SELECT trans(‘blogi205’) FROM dual მაგივრად
    SELECT lat2utf(‘blogi205’) FROM dual

  2. 🙂 არაფრის.
    ვცდილობ დავიცვა შენი ბლოგის მომხმარებლები ეგეთი ხარვეზებისგან 😀

    p.s. RSS-ებში დავიმატე დღეს შენი ბლოგი.

Leave a Reply

Your email address will not be published. Required fields are marked *