منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
سؤال : حفظ قمية الـ CheckBox داخل قاعدة بيانات access - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم قواعد البيانات (http://vb4arb.com/vb/forumdisplay.php?fid=40)
+--- قسم : قسم أسئلة قواعد البيانات تحت بيئة الـ.NET (http://vb4arb.com/vb/forumdisplay.php?fid=41)
+--- الموضوع : سؤال : حفظ قمية الـ CheckBox داخل قاعدة بيانات access (/showthread.php?tid=3044)



سؤال : حفظ قمية الـ CheckBox داخل قاعدة بيانات access - hitham - 30-05-14

السلام عليكم

تعبت من المحاولة وانا بحاول حفظ قمية الـ CheckBox داخل قاعدة بيانات access

بأستخدام هذا الكود رغم أن بقية الحقول تنحفظ إلا قيمتة الـ CheckBox

ارجوا ممن يعرف الحل أخبارى واترك لكم الكود قد يكون هناك خطأ ما بة

connec()
Dim dts As DataSet = New DataSet
Dim da As OleDbDataAdapter = New OleDbDataAdapter
Dim sqls As String

sqls = "select * from tb1 where id='" & TextBox1.Text & "'"
da.SelectCommand = New OleDbCommand(sqls, cnn)
dts.Clear()
da.Fill(dts)
If dts.Tables(0).Rows.Count = 0 Then
cmd.Connection = cnn
cmd.CommandText = "insert into tb1 ([id],[n],[m],[s]) values ('" & TextBox1.Text & _
"','" & TextBox2.Text & "','" & TextBox3.Text & "," & Me.CheckBox1.Checked & "')"
cmd.ExecuteNonQuery()
MsgBox("تمت الاضافة بنجاح")
da.Dispose()
dts.Dispose()
cnn.Close()
End If


حيث أن تنفيذ الكود بيتوقف عند cmd.ExecuteNonQuery()

ملاحظة / ربطت قاعدة البيانات بالبرنامج عن طريق الكود

اتمنى منكم المساعدة


RE: سؤال - a_almisery - 30-05-14

اعط الشيك بوكس قيـمه واحفظها في عمود


RE: سؤال - vbnet - 30-05-14

.....

أفضل طريقة لتجنب المشاكل في التعامل مع قواعد البيانات
هي بتمرير البيانات باستخدام البارامترات مع القيمة Parameters.AddWithValue
فهي تغنيك من تحديد نوع العمود (الحقل) وعلامات التنصيص
كالتالي:
كود :
Try

    'إذا كان ترقيم تلقائي id لاحاجة لإضافة
    Dim sql As String = " INSERT INTO [tb1] ([n], [m], [s]) VALUES (@n, @m, @s) "
    Using cmm As New OleDbCommand(sql, cnn)
        ' في الأكسس إحرص على ترتيب البارامترات بنفس ترتيبها اسمائها في جملة إسكويل
        cmm.Parameters.AddWithValue("@n", Me.TextBox2.Text)
        cmm.Parameters.AddWithValue("@m", Me.TextBox3.Text)
        cmm.Parameters.AddWithValue("@s", Me.CheckBox1.Checked)

        cnn.Open()
        cmm.ExecuteNonQuery()
        cnn.Close()

    End Using

    MsgBox("تمت الاضافة بنجاح")

Catch ex As Exception
    MsgBox(ex.Message)
End Try

.....


RE: سؤال - hitham - 30-05-14

الله يعطيكم العافيه شباب على تعاونكم راح اجرب الحل


RE: سؤال - ناجي إبراهيم - 30-05-14

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

الخطأ في موقع علامة التنصيص الفردية التي تضم قيمة الـ CheckBox مع محتوى TextBox3:

كود :
cmd.CommandText = "insert into tb1 ([id],[n],[m],[s]) values ('" & TextBox1.Text & _
"','" & TextBox2.Text & "','" & TextBox3.Text & "," & Me.CheckBox1.Checked & "')"

و الصواب هو:

كود :
cmd.CommandText = "insert into tb1 ([id],[n],[m],[s]) values ('" & TextBox1.Text & _
"','" & TextBox2.Text & "','" & TextBox3.Text & "'," & Me.CheckBox1.Checked & ")"

نرجو الاستفادة و السلام.



RE: سؤال - hassan - 30-05-14

(30-05-14, 01:17 PM)ناجي إبراهيم كتب : السلام عليكم...

الخطأ في موقع علامة التنصيص الفردية التي تضم قيمة الـ CheckBox مع محتوى TextBox3:

كود :
cmd.CommandText = "insert into tb1 ([id],[n],[m],[s]) values ('" & TextBox1.Text & _
"','" & TextBox2.Text & "','" & TextBox3.Text & "," & Me.CheckBox1.Checked & "')"

و الصواب هو:

كود :
cmd.CommandText = "insert into tb1 ([id],[n],[m],[s]) values ('" & TextBox1.Text & _
"','" & TextBox2.Text & "','" & TextBox3.Text & "'," & Me.CheckBox1.Checked & ")"

نرجو الاستفادة و السلام.

ههههههههههه والله البرمجة ما تلعب شوف على علامة تنصيص كود كامل مو شغال