سلام عليكم...
شكر:
طبعا أخونا مبتدئ جدا أعطانا موضوع جميل جدا
وموضوعي هنا يعتبر تكملة
^==============================================^
مقدمة:
أعرفكم اليوم على كلاس ResultSetMetaData
مفيد للذين يتصلون مع قواعد البيانات....
^=========================^
ماهو ResultSetMetaData ؟؟
هو عبارة عن كلاس يعطيك معلومات مهمة عن الجدول الذي تم استخراجه من قاعدة البيانات والموجود بداخل ResultSet ....
^==============================================^
كيف ننشئ الكلاس ResultSetMetaData ؟؟؟؟
هل تذكرون الكلاس ResultSet الذي ذكره "مبتدئ جداً " ؟؟؟
سأرمز له بالرمز rs
سنستخدمه الان كما يلي:
ResultSetMetaData rsmd = rs.getMetaData();
وقد تكون لديك الكلاس ResultSetMetaData ....
^=================================^
كيف نستفيد من ResultSetMetaData ؟؟؟؟
طبعا الان تستطيع أن تنادي أي من الــ Methods التالية :
- أولا عدد الاعمدة :
rsmd.getColumnCount()
يعطيك: عدد من نوع int طبعا ويحدد عدد الاعمدة الموجودة
الفائدة: اذا أردت ان تدور على كل الاعمدة فتضعها في شرط الـ Loop
-ثانيا اسم العمود:
rsmd.getColumnName(int column)
الادخال: يجب ان تمرر رقم العمود في هذه الـmethod.
ويعطيك: الاسم من نوع string
الفائدة: اذا لم تكن تعرف اسم العمود...طبعا غالبا تريد ان تطبع اسم العمود
مع عرض القيم.
-ثالثا نوع العمود :
rsmd.getColumnType(int column)
الادخال: يجب ان تمرر رقم العمود في هذه الـmethod.
ويعطيك: الاسم من نوع int
طبعا الانواع ستكون كما يلي:
java.sql.Types.ARRAY ,java.sql.Types.BIGINT ,java.sql.Types.BINARY java.sql.Types.BIT ,java.sql.Types.BLOB ,java.sql.Types.BOOLEAN java.sql.Types.CHAR ,java.sql.Types.CLOB ,java.sql.Types.DATALINK java.sql.Types.DATE ,java.sql.Types.DECIMAL ,java.sql.Types.DISTINCT java.sql.Types.DOUBLE ,java.sql.Types.FLOAT ,java.sql.Types.INTEGER java.sql.Types.JAVA_OBJECT ,java.sql.Types.LONGVARBINARY java.sql.Types.LONGVARCHAR ,java.sql.Types.NULL ,java.sql.Types.NUMERIC java.sql.Types.OTHER ,java.sql.Types.REAL ,java.sql.Types.REF , java.sql.Types.SMALLINT ,java.sql.Types.STRUCT ,java.sql.Types.TIME , java.sql.Types.TIMESTAMP ,java.sql.Types.TINYINT java.sql.Types.VARBINARY ,java.sql.Types.VARCHAR *****لمزيد من المعلومات اذهب الى موقع صن وافتح الـ Documentation لكي تعرف ماذا يعني كل نوع ***
الفائدة:
أنك تستطيع ان تتعرف عن نوع العمود والقيمه الاتي تقرئها... وتتعامل معها حسب نوعها فلو كانت مثلا من نوع INTEGER فتعامها على انها عدد صحيح
وتعمل كل العمليات الحسابية التي تريدها
^===============================================^
ماذا أيضا ؟؟؟
هنالك اشياء اخرى يحويها الكلاس
تستطيع ان تحصل عليها من الDocumentation من موقع صن
النهاية:
في النهاية نريد ان نعمل كود يكون عام قد الامكان
لأن أصحاب قاعدة البيانات
قد يغيرون اسماء الاعمدة وحتى انواعها وكذلك ترتيبها
وانت لا تريد ان تعدل كودك كل ما غير احد شيء
فلنجعل برامجنا مستقلة
عن المسميات والترتيب
شكر مرة أخرى :
أشكر أخي مبتدئ جدا... لأن موضوعي كما قلت لكم يعتمد على موضوعه
واذا كان لأحد اي استفسار فاليسأل...
^=====================انتهى=======================^