[JDBC] سؤال jdbc بخصوص ResultSet وكيفية عملها

اذهب الى الأسفل

[JDBC] سؤال jdbc بخصوص ResultSet وكيفية عملها Empty [JDBC] سؤال jdbc بخصوص ResultSet وكيفية عملها

مُساهمة من طرف Jaafar في الخميس يناير 24, 2019 1:00 pm

سلام عليكم اخوان ممكن توظيح عمل ResultSet
يعني كيف تتحرك ع database
تتحرك rows
لو
Columns
Jaafar
Jaafar
.
.

تاريخ التسجيل : 24/01/2019
المساهمات : 1
النقاط : 3
التقيم : 0
الدولة : العراق
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

[JDBC] سؤال jdbc بخصوص ResultSet وكيفية عملها Empty رد: [JDBC] سؤال jdbc بخصوص ResultSet وكيفية عملها

مُساهمة من طرف NEXT في الخميس يناير 24, 2019 1:27 pm

للتنقل بين السجلات فى قاعدة البيانات يمكن الاطلاع على الجزء التالى من مقال الزميل [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]


إنقر لفتح الجزء الخاص للتنقل بين السجلات:

9_ برمجة ازرار التنقل بين السجلات ....(التالى / السابق/ الاول / الاخير)...و ذلك على النحو التالى :

_ برمجة زر ( التالى )...المطلوب من هذا الزر هو عند النقر عليه يجب أولا التحقق ما إذا كان هناك سجل التالي للانتقال إليه أم لا وثانيا، إذا كان هناك السجل التالي، يقوم بعرضه في الحقول النصية ....ويتم ذلك باستخدام الكود التالى _ قم بالنقر على هذا الزر ليتم فتح صفحة الكود ثم اكتب الكود التالى :


الكود:
try {
      
if ( rs.next( ) ) {
int id_col = rs.getInt("ID");
       String id =Integer.toString(id_col);
       String first_name = rs.getString("First_Name");
       String last_name = rs.getString("Last_Name");
       String job = rs.getString("Job_Title");
      
      textID.setText(id);
      textFirstName.setText(first_name);
      textLastName.setText(last_name);
      textJobTitle.setText(job);
}
else {
rs.previous( );
JOptionPane.showMessageDialog(main.this, "End of File");
}
}
catch (SQLException err) {
JOptionPane.showMessageDialog(main.this, err.getMessage());
}


_ فى السطر الاول من الكود استخدمنا تعليمة try...cacth و ذلك لمعالجة الاخطاء التى ستظهر فى حالة عدم وجود سجل للانتقال إلية ...ثم مررنا الرسالة (End of File) اليها حتى يتم اظهارها للمستخدم لاخبارة بذلك

_فى السطر الثانى أستخدمنا الجملة الشرطية if.....else وذلك للتحق من وجود سجل للانتقال الية ....فى حالة وجودة يتم الانتقال الية و إسناد حقول الجدول الى مربعات النصوص ...

_برمجة زر (السابق) الكود الخاص بهذا يشبة الى حد كبير الكود الخاص بزر التالى إعلاه مع فرق بسيط ...فبدلا من استخدام rs.Next بعد كملة if سوف نتسخدم rs.previous ...و ايضا بعد كلمة else بدلا من استخدام rs.previous سوف نتسخدم rs.next و بالتالى فإن الكود لهذا الزر كما يلى :

الكود:
try {
      
if ( rs.previous() ) {
int id_col = rs.getInt("ID");
       String id =Integer.toString(id_col);
       String first_name = rs.getString("First_Name");
       String last_name = rs.getString("Last_Name");
       String job = rs.getString("Job_Title");
      
      textID.setText(id);
      textFirstName.setText(first_name);
      textLastName.setText(last_name);
      textJobTitle.setText(job);
}
else {
rs.next();
JOptionPane.showMessageDialog(main.this, "End of File");
}
}
catch (SQLException err) {
JOptionPane.showMessageDialog(main.this, err.getMessage());
}

_ برمجة زر الامر (الاول) المطلوب من هذا الزر هو عند النقر علية الانتقال الى اول حقل فى جدول قاعدة البيانات ...و بالتالى فالكود سهل جدا فقط استخدم الامر rs.first ثم إسناد الحقول الى مربعات النصوص ....و بالتالى فالكود سيكون على النحو التالى :

الكود:
try {
      
 rs.first() ;
int id_col = rs.getInt("ID");
       String id =Integer.toString(id_col);
       String first_name = rs.getString("First_Name");
       String last_name = rs.getString("Last_Name");
       String job = rs.getString("Job_Title");
      
      textID.setText(id);
      textFirstName.setText(first_name);
      textLastName.setText(last_name);
      textJobTitle.setText(job);
}
catch (SQLException err) {
JOptionPane.showMessageDialog(main.this, err.getMessage());
}

_برمجة زر (الاخير) المطلوب من هذا الزر هو الانتقال الى اخر سجل فى جدول قاعدة البيانات ....و هو نفس الكود أعلاه مع تغير فقط rs.first الى rs.last

للمزيد من المعلومات يمكنك الاطلاع على المشاركة التالية :

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
[JDBC] سؤال jdbc بخصوص ResultSet وكيفية عملها Do.php?imgf=154090993464951
NEXT
NEXT
الادارة
الادارة

تاريخ التسجيل : 18/02/2011
المساهمات : 380
النقاط : 200556
التقيم : 14
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى