منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : تعديل كود الحذف
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الرجاء تعديل كود حذف البيانات بحيث إذا كان الجدول فارغ تظهر رسالة بأنه لا توجد بيانات في الجدول
وهذا كود الحذف
كود :
Dim Position As Integer = DataGridView1.CurrentRow.Index
        Dim ID_Position As Integer = DataGridView1.Rows(Position).Cells("BID").Value
        Dim CmdDelete As New SqlCommand
        With CmdDelete
            .Connection = Conn
            .CommandType = CommandType.Text
            .CommandText = "Delete  From Tab_Books Where BID = @BID"
            .Parameters.Clear()
            .Parameters.AddWithValue("@BID", SqlDbType.Int).Value = ID_Position
        End With
        Try
            If Conn.State = 1 Then Conn.Close()
            Conn.Open()
            CmdDelete.ExecuteNonQuery()
            Conn.Close()
            MsgBox("تم حذف اســم الكتـاب المحـدد.", MsgBoxStyle.Information, "إجـراء الحـذف")
            CmdDelete = Nothing
        Catch ex As Exception
            Conn.Close()
            MsgBox(Err.Description, MsgBoxStyle.Information)
        Finally
            If Conn.State = ConnectionState.Open Then Conn.Close()

        End Try
بإمكانك إضافة الكود التالي في البداية ، قبل كود الحذف :
كود :
  If DataGridView1.Rows.Count = 0 Then
           MsgBox("لا توجد بيانات في الجدول", MsgBoxStyle.Critical, "حذف البيانات")
           Exit Sub
       End If
إضافة لما قدمه أخي الكريم ابو خالد الشكري بارك الله فيه و له
يمكن وضعه في بداية كود الحذف 
كود :
   Using Cmd As SqlClient.SqlCommand = New SqlClient.SqlCommand("SELECT MAX(STUDENT_Id) From TBL_STUDENT", Conne)
               If Conne.State = ConnectionState.Closed Then
                   Conne.Open()
               End If
               If Cmd.ExecuteScalar Is DBNull.Value Then

       MessageBox.Show("جدول التلاميذ فارغَا .. لا توجد بيانات لتنفيذ الأمر", "تنبيه", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)
                   Conne.Close()
                   Return
               End If
           End Using

تحياتي