المشاركات : 405
المواضيع 131
الإنتساب : Aug 2014
السمعة :
2
الشكر: 2
تم شكره 94 مرات في 58 مشاركات
الكود
كود :
Dim conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
For i As Integer = 0 To DataGridView1.Rows.Count - 1
If i > DataGridView1.Rows.Count - 1 Then Exit For
Dim sql As String =
" INSERT INTO [Rent_Equipment] " &
" ( Cus_ID, Cus_Name, Cus_Private_Number, Equ_ID, Equ_Name, Equ_Quantity, Equ_Price, @Ren_Date ) " &
" VALUES " &
" ( @Cus_ID, @Cus_Name, @Cus_Private_Number, @Equ_ID, @Equ_Name, @Equ_Quantity, @Equ_Price, @Ren_Date ) "
Dim cmd As New OleDbCommand(sql, conn)
cmd.Parameters.AddWithValue("@Equ_ID", DataGridView1.Rows(i).Cells(0).Value)
cmd.Parameters.AddWithValue("@Equ_Name", DataGridView1.Rows(i).Cells(1).Value)
cmd.Parameters.AddWithValue("@Equ_Quantity", DataGridView1.Rows(i).Cells(2).Value)
cmd.Parameters.AddWithValue("@Cus_ID", ComboBox1.Text)
cmd.Parameters.AddWithValue("@Cus_Name", TextBox1.Text)
cmd.Parameters.AddWithValue("@Cus_Private_Number", TextBox2.Text)
cmd.Parameters.AddWithValue("@Equ_Price", TextBox4.Text)
cmd.Parameters.AddWithValue("@Ren_Date", DateTimePicker1.Value.Date)
conn.Open()
cmd.ExecuteNonQuery()
conn.Close()
MessageBox.Show("We have been successfully Date", "Congratulations", MessageBoxButtons.OK, MessageBoxIcon.Information)
i += 1
Next i
مكان الخطا cmd.ExecuteNonQuery()
الخطا يقول
An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll
Additional information: The INSERT INTO statement contains the following unknown field name: '@Ren_Date'. Make sure you have typed the name correctly, and try the operation again.
ما الحل يا اخواني ؟؟
المشاركات : 237
المواضيع 9
الإنتساب : May 2015
السمعة :
43
الشكر: 3583
تم شكره 2753 مرات في 170 مشاركات
سلام
بيقول ان لا يوجد عمود بالاسم Ren_Date@ لو تلاحظ سطر اسماء الاعمده اللي قبل VALUES احذف علامه @ وليس بسطر البارامترات
ركز فيها تلاقيك وضعت علامه البارامتر مكان اسم العمود
[URL="http://www.up-00.com/"][/URL]
موفقين
المشاركات : 405
المواضيع 131
الإنتساب : Aug 2014
السمعة :
2
الشكر: 2
تم شكره 94 مرات في 58 مشاركات
السلام عليكم
من جديد رجعت لكم وشكرا لك على مجهودك الرائع معي ولكن الخطأ نفسه وتغير نوع الخطأ
An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll
Additional information: Data type mismatch in criteria expression.
ومكان الخطأ
cmd.ExecuteNonQuery()
فهل هناك شيء جديد اضيفه او احذفه ارجو ان تتأكد لي من الكود بالكامل لو سمحت
المشاركات : 237
المواضيع 9
الإنتساب : May 2015
السمعة :
43
الشكر: 3583
تم شكره 2753 مرات في 170 مشاركات
سلام
باقي غليك ترتيب اسطر البارامترات متطابقه للترتيب في حملت اسكيوال
كود :
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
conn.Open()
For Each row As DataGridViewRow In DataGridView1.Rows
Dim sql As String =
" INSERT INTO [Rent_Equipment] " &
" ( Cus_ID, Cus_Name, Cus_Private_Number, Equ_ID, Equ_Name, Equ_Quantity, Equ_Price, Ren_Date ) " &
" VALUES " &
" ( @Cus_ID, @Cus_Name, @Cus_Private_Number, @Equ_ID, @Equ_Name, @Equ_Quantity, @Equ_Price, @Ren_Date ) "
Using cmd As New OleDbCommand(sql, conn)
cmd.Parameters.AddWithValue("@Cus_ID", ComboBox1.Text)
cmd.Parameters.AddWithValue("@Cus_Name", TextBox1.Text)
cmd.Parameters.AddWithValue("@Cus_Private_Number", TextBox2.Text)
cmd.Parameters.AddWithValue("@Equ_ID", row.Cells(0).Value)
cmd.Parameters.AddWithValue("@Equ_Name", row.Cells(1).Value)
cmd.Parameters.AddWithValue("@Equ_Quantity", row.Cells(2).Value)
cmd.Parameters.AddWithValue("@Equ_Price", TextBox4.Text)
cmd.Parameters.AddWithValue("@Ren_Date", DateTimePicker1.Value.Date)
cmd.ExecuteNonQuery()
End Using
Next
conn.Close()
End Using
MessageBox.Show("We have been successfully Date", "Congratulations", MessageBoxButtons.OK, MessageBoxIcon.Information)
موفقين
المشاركات : 405
المواضيع 131
الإنتساب : Aug 2014
السمعة :
2
الشكر: 2
تم شكره 94 مرات في 58 مشاركات
الكود تبعك يوجد به مشكلة بعد والمشكلة تقول ان :
An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll
Additional information: The INSERT INTO statement contains the following unknown field name: ' Cus_ID'. Make sure you have typed the name correctly, and try the operation again.
هذا هو مكان الخطأ
cmd.ExecuteNonQuery()
الكود التي قمت بإضافته
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
conn.Open()
For Each row As DataGridViewRow In DataGridView1.Rows
Dim sql As String =
" INSERT INTO [Rent_Equipment] " &
" ( Cus_ID, Cus_Name, Cus_Private_Number, Equ_ID, Equ_Name, Equ_Quantity, Equ_Price, Ren_Date ) " &
" VALUES " &
" ( @Cus_ID, @Cus_Name, @Cus_Private_Number, @Equ_ID, @Equ_Name, @Equ_Quantity, @Equ_Price, @Ren_Date ) "
Using cmd As New OleDbCommand(sql, conn)
cmd.Parameters.AddWithValue("@Cus_ID", ComboBox1.Text)
cmd.Parameters.AddWithValue("@Cus_Name", TextBox1.Text)
cmd.Parameters.AddWithValue("@Cus_Private_Number", TextBox2.Text)
cmd.Parameters.AddWithValue("@Equ_ID", row.Cells(0).Value)
cmd.Parameters.AddWithValue("@Equ_Name", row.Cells(1).Value)
cmd.Parameters.AddWithValue("@Equ_Quantity", row.Cells(2).Value)
cmd.Parameters.AddWithValue("@Equ_Price", TextBox4.Text)
cmd.Parameters.AddWithValue("@Ren_Date", DateTimePicker1.Value.Date)
cmd.ExecuteNonQuery()
End Using
Next
conn.Close()
End Using
MessageBox.Show("We have been successfully Date", "Congratulations", MessageBoxButtons.OK, MessageBoxIcon.Information)
المشاركات : 237
المواضيع 9
الإنتساب : May 2015
السمعة :
43
الشكر: 3583
تم شكره 2753 مرات في 170 مشاركات
سلام
تاكد من اسم العمود Cus_ID في الجدول Rent_Equipment وبالمره راجع بفيه اسما الاعمده
ولاجظ اذا يوجد عمود ترقيم تلقائي فما فيه داعي تضعه في جمله اسكيوال
موفقين
المشاركات : 405
المواضيع 131
الإنتساب : Aug 2014
السمعة :
2
الشكر: 2
تم شكره 94 مرات في 58 مشاركات
راجعت جميع الاكواد ومثل الشيء الخطأ
فهل من مغيث ؟؟
المشاركات : 237
المواضيع 9
الإنتساب : May 2015
السمعة :
43
الشكر: 3583
تم شكره 2753 مرات في 170 مشاركات
سلام
هل عملت مثل ما خبرتك في ردي الاخير من مراجعه اسم الاعمده في قاعدت البيانات
اذا استمرت المشكله ضع مشروعك لنشوف
موفقين
المشاركات : 405
المواضيع 131
الإنتساب : Aug 2014
السمعة :
2
الشكر: 2
تم شكره 94 مرات في 58 مشاركات
هذا هو مشروعي واتمنى ان ترفق معاه الشرح مصور حق استوعب الخطأ الى مشيت عليه
ولو تكرمت ارفق لي بريدك الالكتروني حق اتواصل معاك مباشرة او رقم هاتفك الواتس اب
رابط التحميل
http://adf.ly/1L6Dp8
وشكرا لك اخي الفاضل
المشاركات : 237
المواضيع 9
الإنتساب : May 2015
السمعة :
43
الشكر: 3583
تم شكره 2753 مرات في 170 مشاركات
سلام
اتضحت المشكله في المسافات المشوهه
اوضح اكثر احيانا عند النسخ كود من اي صفحه من المتصفح تتغير رموز بعض الاحرف
وغالبا تكون المسافه فتشاهد مسافه مشوهه يعتي شكلها مسافه ولكنها رمز شبيه بالمسافه
شرح هذع المشكله قراته في احد المنتدات
فكل اللي انا عملته خذفت المسافات في جملت sql واعدت كتابتها واختفت المشكله
كود :
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
conn.Open()
For Each row As DataGridViewRow In DataGridView1.Rows
If row.Cells(0).Value Is Nothing Then Exit For
Dim sql As String =
" INSERT INTO [Rent_Equipment] " &
" ( Cus_ID, Cus_Name, Cus_Private_Number, Equ_ID, Equ_Name, Equ_Quantity, Equ_Price, Ren_Date ) " &
" VALUES " &
" ( @Cus_ID, @Cus_Name, @Cus_Private_Number, @Equ_ID, @Equ_Name, @Equ_Quantity, @Equ_Price, @Ren_Date ) "
Using cmd As New OleDbCommand(sql, conn)
cmd.Parameters.AddWithValue("@Cus_ID", ComboBox1.Text.ToString)
cmd.Parameters.AddWithValue("@Cus_Name", TextBox1.Text.ToString)
cmd.Parameters.AddWithValue("@Cus_Private_Number", TextBox2.Text.ToString)
cmd.Parameters.AddWithValue("@Equ_ID", row.Cells(0).Value.ToString)
cmd.Parameters.AddWithValue("@Equ_Name", row.Cells(1).Value.ToString)
cmd.Parameters.AddWithValue("@Equ_Quantity", row.Cells(2).Value.ToString)
cmd.Parameters.AddWithValue("@Equ_Price", TextBox4.Text.ToString)
cmd.Parameters.AddWithValue("@Ren_Date", DateTimePicker1.Value.ToString)
cmd.ExecuteNonQuery()
End Using
Next
conn.Close()
End Using
وضعت شرط خروج من الحلقه اذا وصل للسطر الاخير الفارغ
موفقين
|