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

المرجو المساعدة في تصحيح جملة insert into

بدأه aboumazen في 2 سبتمبر 2012 · 11 رد · 1,034 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

البرنامج يعطي خطأ في جملى insret into

المرجو المساعدة فقد اعياني الكود منذ الصباح

كود زر الحفظ هو

 Try
        	Dim con As New OleDbConnection("provider=microsoft.ACE.oledb.12.0;data source=" & Application.StartupPath & "/Eau.accdb")
        	Dim cmd As New OleDbCommand("insert into Consomation(Num_Facture,Num_Contrat,Annee,Mois,Index,Type_Releve ) values (?,?,?,?,?,?)", con)

        	cmd.Parameters.Clear()
        	cmd.Parameters.AddWithValue("@Num_Facture", Trim(TNum_Facture.Text))
        	cmd.Parameters.AddWithValue("@Num_Contrat", Trim(TxtNumContrat.Text))
        	cmd.Parameters.AddWithValue("@Annee", Trim(TxtAnnee.Text))
        	cmd.Parameters.AddWithValue("@Mois", Trim(ComboMois.Text))
        	cmd.Parameters.AddWithValue("@Index", Trim(TxtIndex.Text))
        	cmd.Parameters.AddWithValue("@Type_Releve", Trim(ComboReleve.Text))

        	con.Open()
        	cmd.ExecuteNonQuery()
        	con.Close()

        	MsgBox("تم الحفظ بنجاح تام", MsgBoxStyle.Information + MsgBoxStyle.MsgBoxRtlReading, "تعبئة المذكرة اليومية")
    	Catch ex As Exception
        	MsgBox(ex.Message)
        	Return
    	End Try

فكرة المشروع

البرنامج يقوم بتخزين بيانات استهلاك الماء

الخانة الاولى التي هي رقم العقدة, فيها خاصية الاكمال التلقائي , و له علاقة بقاعدة البيانات التي اضفتها الى البرنامج عن طريق الويزرت, لكن لم اقم بتحويلها الى المكان الذي يطلبه الويزرت و تركتها في مسار البرنامج

و بقية الخانات عادية

المشروع في المرفقات

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

جمعية الماء للتضامن.rar

#2

من الأفضل أن تضع نص رسالة الخطأ، قد لا يملك الجميع إمكانية تجربة المشروع لقراءة الرسالة فقط

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#3

وهذه رسالة الخطأ

للاسف باللغة الفرنسية

و تعني حرفيا

خطأ في عيارة insert into

post-221483-013119400 1346594023_thumb.j

المرفقات
Capture.JPG
#4

الـ exception الذي تم التقاطه قد يعرض لك معلومات أكثر في سبب رسالة الخطأ.

ألا يوجد توضيح أكثر؟

مثلاً أنت اخترت عرض ex.Message

لكن بدل Message هناك عدة خيارات أخرى بمعلومات أكثر تفصيلاً.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#5

حقيقة لا اعرفها

للأسف

#6

السلام عليكم ..

  1. الجدول في قاعدة البيانات لا يحوي حقل اسمه Num_Facture و بالتالي يجب عدم وضعه .
  2. كلمة Index هي كلمة محجوزة في الأكسس , لذلك يجب وضعها ضمن أقواس .
  3. فقط قم بتصحيح السطر :
    Dim cmd As New OleDbCommand("insert into Consomation(Num_Contrat,Annee,Moi,[Index],Type_Releve ) values (?,?,?,?,?)", con)

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#7

جزاكم الله حيرا xacker

و حسام

و الله انا لندعو لكم في سجودنا ليفرج الله كربكم

اللهم ياربي اجعل سوريا حرة ابية و اقطع دابر القوم الظالمين فيها يا رب امين

اشتغل معي الكود تو الحمد لله

بقي سؤال اخر

عندما اضيف قاعدة بيانات الى البرنامج عن طريق الويزرت فانه يطلب مني نقلها من debug رعم اني استعمل مسار البرنامج Application.StartupPath & "/Eau.accdbالى مسار اعلى

هل ستعمل القاعدة من مكانها الحديد رغم اني استعمل اكوادا اخرى فيها مسار البرنامج Application.StartupPath & "/Eau.accdb"

وسيصبح عندي قاعدتين كيف الحل؟

عودة لجوابك اخي حسام

بالنسبة للقاعدة كانها تتغير ,فقد كنت قد اضفت العمود الاول الى الجدول لكنه لم اره لا اعرف كيف حذف ,

#8

السلام عليكم و رحمة الله ..

  1. بارك الله بك اخي aboumazen و جزاك خيرا , آمين , آمين ... إن شاء الله سيكون الفرج قريب ...
  2. إذا قمت بربط الــ Wizard مع قاعدة بيانات موجودة في ملفات المشروع , فإن الفيجوال استديو يقوم كل مرة تعمل فيها تنفيذ للمشروع يقوم بنقل نسخة من القاعدة إلى المجلد Debug و يحذف النسخة القديمة و هذا ما يفسر أنك تقوم بإدخال بيانات أو تعديلات على قاعدة البيانات الموجودة في Debug ثم في التنفيذ التالي , لا تجد هذه التعديلات موجودة ...
  3. إذا أردت الــ Wizard أن يعمل على قاعدة بيانات واحدة , و موجودة في الــ Debug فقط قم بفتح الملف المسمى app.config و اكتب فيه مسار قاعدة البيانات الكامل : مثلا :
     <connectionStrings>
        	<add name="جمعية_الماء_للتضامن.My.MySettings.EauConnectionString"
            	connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\f\جمعية الماء للتضامن\جمعية الماء للتضامن\bin\Debug\Eau.accdb"
            	providerName="System.Data.OleDb" />
    	</connectionStrings>

    لكن عندما تعطي الملف التنفيذي للعميل , يجب عليك تحديد فقط اسم القاعدة دون مسار كامل أي :

    <add name="جمعية_الماء_للتضامن.My.MySettings.EauConnectionString"
            	connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Eau.accdb"
            	providerName="System.Data.OleDb" />
    	</connectionStrings>

    و سيعمل الملف التنفيذي عنده (يجب أن يكون الملف app.config معه) .. و أنت تبقى لك النسخة التي تم وضع المسار الكامل فيها .

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#9

جزاك الله خيرا

والله دائما توفي في الجواب

فهمت و انا اجرب الان

#10

هل بعد تغيير الكود في app.config في المرحلة الثانية عن العميل يعمل البرنامج على قاعدة واحدة

و لا يعمل ابدا على المسار الاول الذي ينقل اليها Wizard قاعدة البيانات

و هل السجلات كلها تخزن في نفس القاعدة التي في debug

#11

السلام عليكم ..

نعم .. بهذه الطريقة سيكون لديك قاعدة بيانات واحدة موجودة في المجلد Debug , تخزن فيها كل السجلات ..

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#12

وعليكم السلام

حزاك الله خيرا

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