这是我保存BTN的密码
Private Sub SaveBtn2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles SaveBtn2.Click
Dim dt As New DataTable
Dim adapter As New SqlDataAdapter
Dim con As String = "Data Source = HCA-ISD03\SQLEXPRESS; Initial Catalog = QMS_HCA; User ID=qs; Password=ZAQ!2wsx; MultipleActiveResultSets=True"
Dim conn As New SqlConnection(con)
conn.Open()
cmd.Connection = conn
cmd.CommandText = "spSaveAddNewAlerts"
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@MESSAGE", Message.Text)
cmd.Parameters.AddWithValue("@DCREATED", DateTimePicker1.Value)
cmd.Parameters.AddWithValue("@CREATEDBY", Createdby.Text)
cmd.ExecuteNonQuery()
If Message.Text = "" Then
MessageBox.Show("Message cannot be empty, fill in before proceeding", _
"User Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Message.Focus()
Else
MessageBox.Show("Application Restarting..", _
"User Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Message.Focus()
Application.Restart()
conn.Close()
End If
MsgBox("Saved, Updating Database..")
Application.Restart()
End Sub
如何中断要保存在数据库中的数据。即使出现消息错误并且我已经关闭了连接。数据仍然存储在数据库中。请帮忙。谢谢!
答案 0 :(得分:0)
为什么不将验证放在存储过程调用之前,如果遇到验证错误,就直接退出点击处理程序?
Private Sub SaveBtn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveBtn2.Click
'Check this first, before running the stored procedure!
If Message.Text = "" Then
MessageBox.Show("Message cannot be empty, fill in before proceeding",
"User Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Message.Focus()
Return 'Exit the method!
End If
Dim dt As New DataTable
Dim adapter As New SqlDataAdapter
Dim con As String = "Data Source = HCA-ISD03\SQLEXPRESS; Initial Catalog = QMS_HCA; User ID=qs; Password=ZAQ!2wsx; MultipleActiveResultSets=True"
Dim conn As New SqlConnection(con)
conn.Open()
cmd.Connection = conn
cmd.CommandText = "spSaveAddNewAlerts"
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@MESSAGE", Message.Text)
cmd.Parameters.AddWithValue("@DCREATED", DateTimePicker1.Value)
cmd.Parameters.AddWithValue("@CREATEDBY", Createdby.Text)
cmd.ExecuteNonQuery()
conn.Close()
MsgBox("Saved, Updating Database..")
Application.Restart()
End Sub