منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
مشكلة في كود اضافة الى sql 2012 - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : مشكلة في كود اضافة الى sql 2012 (/showthread.php?tid=36496)

الصفحات: 1 2


مشكلة في كود اضافة الى sql 2012 - moh developer - 22-09-20

السلام عليكم
ممكن حل مشكلة الخطا دائما يظهر لي خطا لم يتم حفظ البيانات


        Dim con As New SqlConnection("Server= \SQLEXPRESS; Database = mail; Integrated Security = true")

        Dim da As New SqlDataAdapter
        Dim dt As New DataTable
        Dim cmd As New SqlCommand
        Dim cmdb As SqlCommandBuilder

        Try

            Dim r As DataRow = dt.NewRow
            r(1) = TextBox1.Text
            r(2) = TextBox2.Text
            r(3) = TextBox3.Text
            r(4) = TextBox4.Text
            r(5) = TextBox5.Text
            r(6) = TextBox6.Text
            r(7) = TextBox7.Text


            dt.Rows.Add®
            cmdb = New SqlCommandBuilder(da)
            da.Update( dt )

            MsgBox(" تم الادخال بنجاح", MsgBoxStyle.Information)

        Catch ex As Exception


            MsgBox(" لم يتم الادخال بنجاح", MsgBoxStyle.Information)


        End Try


RE: مشكلة في كود اضافة الى sql 2012 - Anas Mahmoud - 22-09-20

ازل Try لترى رسالة الخطأ حتى نعرف اين المشكلة


RE: مشكلة في كود اضافة الى sql 2012 - moh developer - 22-09-20

(22-09-20, 07:08 PM)moh developer كتب :
السلام عليكم
ممكن حل مشكلة الخطا دائما يظهر لي خطا لم يتم حفظ البيانات


        Dim con As New SqlConnection("Server= \SQLEXPRESS; Database = mail; Integrated Security = true")

        Dim da As New SqlDataAdapter
        Dim dt As New DataTable
        Dim cmd As New SqlCommand
        Dim cmdb As SqlCommandBuilder

        Try

            Dim r As DataRow = dt.NewRow
            r(1) = TextBox1.Text
            r(2) = TextBox2.Text
            r(3) = TextBox3.Text
            r(4) = TextBox4.Text
            r(5) = TextBox5.Text
            r(6) = TextBox6.Text
            r(7) = TextBox7.Text


            dt.Rows.Add®
            cmdb = New SqlCommandBuilder(da)
            da.Update( dt )

            MsgBox(" تم الادخال بنجاح", MsgBoxStyle.Information)

        Catch ex As Exception


            MsgBox(" لم يتم الادخال بنجاح", MsgBoxStyle.Information)


       
ا

عتقد يعترض على اول تيسكت

هل لاني معرفة في قاعدة البيانات نوع int  

اذا ارت ان اقوم باخذ قيمت الرقم من التيكست ما ذا اكتب والتاريخ ايضا اذا امكن


RE: مشكلة في كود اضافة الى sql 2012 - Anas Mahmoud - 22-09-20

لاخذ الرقم من التكست بوكس

Integer.Parse(TextBox1.Text)

لاخذ التاريخ

Date.Parse(TextBox1.Text)


RE: مشكلة في كود اضافة الى sql 2012 - moh developer - 23-09-20

عفوا لم تحل المشكلة ايضا يعترض على اول تيس;SJ عند رفع TRY

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


RE: مشكلة في كود اضافة الى sql 2012 - Anas Mahmoud - 23-09-20

طيب اعطني رسالة الخطأ حتى اعرف معترض على ماذا


RE: مشكلة في كود اضافة الى sql 2012 - moh developer - 23-09-20

(23-09-20, 12:52 AM)Anas Mahmoud كتب : طيب اعطني رسالة الخطأ حتى اعرف معترض على ماذا



RE: مشكلة في كود اضافة الى sql 2012 - Anas Mahmoud - 23-09-20

اخي انا بحاجة لرؤية رسالة الخطأ اضغط على المربع الصغير هذا وارني ماذا يخرج


RE: مشكلة في كود اضافة الى sql 2012 - moh developer - 23-09-20

(23-09-20, 01:16 AM)Anas Mahmoud كتب : اخي انا بحاجة لرؤية رسالة الخطأ اضغط على المربع الصغير هذا وارني ماذا يخرج



RE: مشكلة في كود اضافة الى sql 2012 - Anas Mahmoud - 23-09-20

بصراحة انا لا اعلم شيئا عن الاضافة بهذه الطريقة ربما يفيدك الاخوة

ولكن على اي حال الطريقة الافضل هي استخدام SqlCommand 

كود :
Dim query as String = "INSERT INTO student (colName, colID, colPhone, colBranch, colCourse, coldblFee)
VALUES (@colName,@colID, @colPhone, @colBranch,@colCourse, @coldblFee)"

Using conn as New SqlConnection("Server= \SQLEXPRESS; Database = mail; Integrated Security = true")
   Using comm As New SqlCommand()
       With comm
           .Connection = conn
           .CommandType = CommandType.Text
           .CommandText = query
           .Parameters.AddWithValue("@colName", strName)
           .Parameters.AddWithValue("@colID", strId)
           .Parameters.AddWithValue("@colPhone", strPhone)
           .Parameters.AddWithValue("@colBranch", strBranch)
           .Parameters.AddWithValue("@colCourse", strCourse)
           .Parameters.AddWithValue("@coldblFee", dblFee)
       End With
       Try
           conn.open()
           comm.ExecuteNonQuery()
       Catch(ex as SqlException)
           MessageBox.Show(ex.Message.ToString(), "Error Message")
       End Try
   End Using
End USing

هذا الاسلوب افضل والله اعلم


https://stackoverflow.com/a/12634626/14137871