Javaالإنترفيس DatabaseMetaData في جافا
- مقدمة
- دوال الإنترفيس DatabaseMetaData
- مثال شامل
مقدمة
الإنترفيس DatabaseMetaData يوفر مجموعة ضخمة من الدوال التي يمكن إستخدامها لمعرفة معلومات متعلقة بقاعدة البيانات التي تتعامل معها. مثل:
- إسم قاعدة البيانات ( Database Name ).
- إصدار قاعدة اليبانات ( Database Version ).
- رابط الوصول لقاعدة البيانات ( Database URL ).
- الأوامر الموجودة في قاعدة البيانات ( Database Keywords ).
- إسم الـ Driver المستخدم ( Driver Name ).
- إصدار الـ Driver المستخدم ( Driver Version ).
- أسماء الجداول الموجودة في قاعدة البيانات ( Tables Names ).
- إسم المستخدم المتصل بقاعدة البيانات من التطبيق ( User Name ).
للحصول على كائن DatabaseMetaData من كائن الـ Connection نستدعي الدالة getMetaData().
بناؤه
دوال الإنترفيس DatabaseMetaData
الجدول التالي يحتوي على دوال الإنترفيس DatabaseMetaData.
الدالة مع تعريفها | |
---|---|
1 | public String getUserName()
ترجع إٍسم المستخدم المعرف في قاعدة البيانات و المتصل بها حالياً من التطبيق. ترمي الإستثناء SQLException في حال حدث خطأ عند محاولة الإتصال بقاعدة البيانات. |
2 | public String getDatabaseProductName()
ترجع إسم البرنامج الذي تم بواسطته إنشاء قاعدة البيانات. ترمي الإستثناء SQLException في حال حدث خطأ عند محاولة الإتصال بقاعدة البيانات. |
3 | public String getDatabaseProductVersion()
ترجع إصدار البرنامج الذي تم بواسطته إنشاء قاعدة البيانات. ترمي الإستثناء SQLException في حال حدث خطأ عند محاولة الإتصال بقاعدة البيانات. |
4 | public String getDriverName()
ترجع إسم الـ Driver المستخدم للإتصال بقاعدة البيانات. ترمي الإستثناء SQLException في حال حدث خطأ عند محاولة الإتصال بقاعدة البيانات. |
5 | public String getDriverVersion()
ترجع إصدار الـ Driver المستخدم للإتصال بقاعدة البيانات. ترمي الإستثناء SQLException في حال حدث خطأ عند محاولة الإتصال بقاعدة البيانات. |
6 | public String getURL()
ترجع نص يمثل رابط الوصول لقاعدة البيانات أو null في حال لم تتمكن من إرجاعه. ترمي الإستثناء SQLException في حال حدث خطأ عند محاولة الإتصال بقاعدة البيانات. |
7 | public ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
ترجع وصف لجميع الجداول الموجودة في كاتالوج قاعدة البيانات ككائن من الكلاس ResultSet.كل سطر ترجعه يمثل معلومات جدول محدد. يمكنك وضع null مكان أي باراميتر في حال كنت لا تعرف ماذا يجب أن تضع. مكان الباراميتر tableNamePattern يمكنك تحديد الجدول الذي تريد إرجاع وصف له. مكان الباراميتر types يمكنك تحديد أنواع الجداول التي تريد إرجاع وصف لها. يتم ترتيب معلومات الأعمدة الموجودة في كل جدول كالتالي:
ملاحظة: بعض قواعد البيانات لا ترجع معلومات حول جميع الجداول الموجودة فيها. ترمي الإستثناء SQLException في حال حدث خطأ عند محاولة الإتصال بقاعدة البيانات. |
مثال شامل
في المثال التالي سنفترض أننا سنقوم بالإتصال بقاعدة بيانات إسمها company تمثل قاعدة بيانات لشركة, و مبنية بنظام MySQL.
بعدها سنقوم بإضافة بطباعة المعلومات التالية:
- إسم و إصدار الـ Driver الذي إستخدمناه للإتصال بقاعدة البيانات.
- إسم و إصدار البرنامج الذي إستخدمناه لبناء قاعدة البيانات من الأساس.
- إسم المستخدم المتصل بقاعدة البيانات من البرنامج.
- رابط الوصول لقاعدة البيانات التي نتعامل معها.
- أسماء جميع الجداول الموجودة في قاعدة البيانات.
لو كانت قاعدة البيانات موجودة و قمنا بتشغيل البرنامج, سيظهر لنا نتيجة تشبه النتيجة التالية عند تشغيل البرنامج.