تحلل أوراكل

Thll Awrakl



Unicode هو أحد أكثر معايير الترميز تأثيرًا وقوة في عالم التطوير. يمثل Unicode أحرفًا من جميع اللغات تقريبًا عن طريق ترميز الأحرف في رمز عدد صحيح بين 0 و 0x10ffff.

نظرًا لتعدد استخدامات قواعد البيانات ، ستجد نفسك بين الحين والآخر تقوم بتحويل سلسلة إلى تمثيل Unicode الخاص بها.







في هذا البرنامج التعليمي ، سوف تتعلم كيفية استخدام وظيفة decompose () لقواعد بيانات Oracle لتحويل معين إلى تمثيل Unicode الخاص به.



بنية دالة التحليل في أوراكل

بناء جملة الوظيفة كما هو موضح أدناه:



DECOMPOSE (سلسلة [، {'CANONICAL' | 'COMPATIBILITY'}])

تقبل الدالة وسيطين:





  1. سلسلة - يمثل هذا السلسلة التي سيتم تحويلها إلى تكوين Unicode. يمكن أن تكون قيمة هذه المعلمة CHAR و VARCHAR و NCHAR و NVARCHAR2 و CLOB و NCLOB.
  2. العنوان الأساسي - يسمح تعيين القيمة على Canonical للوظيفة بإجراء تحليل متعارف عليه يسمح بإعادة تكوين السلسلة الأصلية. إذا لم يتم تحديدها ، فستستخدم الوظيفة هذه المعلمة افتراضيًا.
  3. التوافق - إذا تم ضبط القيمة على التوافق ، فستقوم الوظيفة بالتحلل في وضع التوافق. لا يسمح هذا الوضع بإعادة التكوين للسلسلة الأصلية. استخدم هذا الخيار عند تحليل أحرف كاتاكانا بنصف العرض وكامل العرض.

من الجيد أن تضع في اعتبارك أن أنواع CLOB و NCLOB مدعومة من خلال التحويل الصريح.

مثال على استخدام الوظيفة

توضح الأمثلة التالية كيفية استخدام وظيفة decompose () الخاصة بقواعد بيانات Oracle.



مثال 1 - استخدام الوظيفة الأساسية

يوضح الكود البسيط التالي كيفية استخدام دالة decompose لتحليل سلسلة نصية إلى تمثيل Unicode الخاص بها.

حدد تحلل ('مرحبًا') كإخراج من ثنائي ؛

يجب أن يؤدي تشغيل الكود أعلاه إلى إرجاع سلسلة الإخراج على النحو التالي:

مثال 2 - الحصول على كود ASCII

لجلب قيم عدد Unicode الصحيح ، يمكننا تمرير السلسلة الناتجة إلى وظيفة asciistr كما هو موضح في المثال أدناه:

حدد asciistr (تحلل ('')) كإخراج من ثنائي ؛

انتاج:

مثال 3 - استخدام الوظيفة مع أحرف غير Unicode

إذا قدمنا ​​الوظيفة بأحرف غير Unicode ، فستعيد الوظيفة سلسلة الإدخال دون أي تعديلات.

مثال توضيحي كما هو موضح:

حدد تحلل ('l') كإخراج من ثنائي ؛

نتيجة:

تنطبق نفس الحالة حتى عند استخدام وظيفة asciistr.

حدد asciistr (('l')) كإخراج من ثنائي ؛

انتاج:

مثال 4 - استخدام الدالة مع وسيطة NULL

ستعيد الدالة قيمة NULL إذا كانت قيمة الإدخال فارغة.

مثال:

حدد (NULL) كإخراج من ثنائي ؛

انتاج:

مثال 5 - استدعاء الدالة مع وجود معلمات مفقودة

مطلوب معلمة السلسلة في الوظيفة. ومن ثم ، إذا فشلنا في تمرير قيمة السلسلة ، فستقوم الوظيفة بإرجاع خطأ كما هو موضح:

حدد () كإخراج من ثنائي ؛

نتيجة:

خطأ SQL: ORA-00938: لا توجد وسائط كافية للدالة
00938. 00000 - 'لا توجد وسائط كافية للدالة'

استنتاج

في هذا البرنامج التعليمي ، تعلمت كيفية استخدام وظيفة decompose () في Oracle لتحويل سلسلة إلى تمثيل Unicode الخاص بها.