تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشكلة في كود اضافة الى sql 2012
#1
السلام عليكم
ممكن حل مشكلة الخطا دائما يظهر لي خطا لم يتم حفظ البيانات


        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
الرد
تم الشكر بواسطة:
#2
ازل Try لترى رسالة الخطأ حتى نعرف اين المشكلة
الرد
تم الشكر بواسطة: moh developer
#3
(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  

اذا ارت ان اقوم باخذ قيمت الرقم من التيكست ما ذا اكتب والتاريخ ايضا اذا امكن
الرد
تم الشكر بواسطة:
#4
لاخذ الرقم من التكست بوكس

Integer.Parse(TextBox1.Text)

لاخذ التاريخ

Date.Parse(TextBox1.Text)
الرد
تم الشكر بواسطة: moh developer , ابراهيم ايبو
#5
عفوا لم تحل المشكلة ايضا يعترض على اول تيس;SJ عند رفع TRY

هنا الخطا
للعلم عند وضع كل الحقول فارغة وانا مصمم قاعدة البيانات ان تكون قيمتها nill
على الاقل يقوم باضافة رقم الايدي الذي تم تعرفة في قاعدة البيانات على انته مفتاح رئيسي ويقوم بالزيادة اوتوماتيكيا
الرد
تم الشكر بواسطة:
#6
طيب اعطني رسالة الخطأ حتى اعرف معترض على ماذا
الرد
تم الشكر بواسطة: moh developer
#7
(23-09-20, 12:52 AM)Anas Mahmoud كتب : طيب اعطني رسالة الخطأ حتى اعرف معترض على ماذا


الملفات المرفقة صورة/صور
   
الرد
تم الشكر بواسطة:
#8
اخي انا بحاجة لرؤية رسالة الخطأ اضغط على المربع الصغير هذا وارني ماذا يخرج


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


الملفات المرفقة صورة/صور
   
الرد
تم الشكر بواسطة:
#10
بصراحة انا لا اعلم شيئا عن الاضافة بهذه الطريقة ربما يفيدك الاخوة

ولكن على اي حال الطريقة الافضل هي استخدام 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
الرد
تم الشكر بواسطة: moh developer



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم