الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عدم تنفيذ ال Queries !

بدأه sameh mahmoud في 4 يونيو 2009 · 6 رد · 503 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه

قمت بكتابة كلاسات للتعمامل مع قاعدة بيانات من نوع اكسس من خلال ال JDBC من مصدر البيانات ODBC

يتم الاتصال بقاعدة البيانات بنجاح و لكن لا يتم تنفيذ اى Query من خلال ال Statement Object :angry: :angry: :angry: :angry: :angry:

ومع ذلك لا يوجد اى Exception عند حدوث الطريقة executeUpdate , و هذه الطريقة لتنفيذ جملة ال sql الخاصة بأضافة سجل جديد , سأترك الصور تتحدث

post-158349-1244121084_thumb.jpg

post-158349-1244121108_thumb.jpg

الملف فى المرفقات

ارجو الرد و جزاكم الله كل خير

Data.rar

تم تعديل هذه المشاركة بواسطة sameh mahmoud في 4 يونيو 2009 في 16:22

سبـــــحــــان الله و بحمده سبحان الله العظيم

403100468.gif

#2

انا لم اطلع على الكود بسكل جيد ,, !!! لكن طالما ظهرت رسالة record added , فهذا يعني ان البيانات قد تم إضافتها , لكن المشكلة انك لم تقم بعملية إغلاق لقاعدة البيانات بعد الانتهاء بالإتصال معها , يجب عليك استخدام close() ...

#3

الف الف (1000) )(1000) شكرا لك MKSoft

تم تسجيل السجلات

شكرا لك

سبـــــحــــان الله و بحمده سبحان الله العظيم

403100468.gif

#4

على فكرة هذا شيء غريب جداً

أحياناً قد أريد استخدام نفس الاتصال أكثر من مرة

طيب ما رأيك أن تجرب الجملة التالية وتخبرني ما النتيجة

connectionObject.setAutoCommit(true);

طبعاً بدون استخدام الدالة close

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#5
علاء الصالحي كتب:
على فكرة هذا شيء غريب جداً

أحياناً قد أريد استخدام نفس الاتصال أكثر من مرة

طيب ما رأيك أن تجرب الجملة التالية وتخبرني ما النتيجة

connectionObject.setAutoCommit(true);

طبعاً بدون استخدام الدالة close

تحياتي

لاسف يا علاء باشا الطريقة setAutoCommit لم تفعل شئ , ربما وضعتها انا فى المكان الغير صحيح هذا هو الكود , قم بصحيحه اذا كان خطأ

اولا الطريقة getConnection

	 protected static Connection getConnection()
	   {
			  Connection con1 = null;
			   try
					{
						  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
						  String url = "jdbc:odbc:sameh";
						  con1 = DriverManager.getConnection(url); 
						 con1.setAutoCommit(true);  
					 }
			   catch(SQLException e)
				   {
							e.printStackTrace();
					}
				catch(ClassNotFoundException e)
				  {
					   e.printStackTrace();
				   }

			return con1;
	   }

و الان الطريقة addNew

	public void addNew(String itemCode,String catName,double col,String FactoryName)
		 {

			   try 
					{

						  String AddSql = "insert into catTab values('" + itemCode.trim() +"','"
						  + catName.trim() + "','" + col + "','" + FactoryName.trim() + "')";

						   con = getConnection();  
						   stat1 = con.createStatement();
						   stat1.executeUpdate(AddSql);
						//  stat1.close();
						//   con.close();


						  System.out.println("record added");
					}
				catch(SQLException e)
				   {
							e.printStackTrace();
				   }
		 }

و شكرا لك

تم تعديل هذه المشاركة بواسطة sameh mahmoud في 4 يونيو 2009 في 19:00

سبـــــحــــان الله و بحمده سبحان الله العظيم

403100468.gif

#6

لدى استفسار اخر

هل توجد اى مكتبة تتعامل مع قواعد البيانات بدون وضع قاعدة البيانات فى مصدر البيانات ODBC , فقط اريد اسم المكتبة و انا سأبحث و شكرا

سبـــــحــــان الله و بحمده سبحان الله العظيم

403100468.gif

#7

أي قاعدة بيانات غير الأكسيس لديها JDBC خاص بها

وهذا يعني أنك لست بحاجة إلى إضافة اسم قاعدة البيانات إلى ODBC-manager

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

مواضيع مشابهة