Храните ваши объекты данных локально, чтобы вы могли быть уверены, что они закрыты и удалены.Блок Using...End Using
гарантирует это, даже если есть ошибка.Вы можете сделать строку подключения переменной уровня формы, чтобы использовать ее где угодно, но это единственная переменная уровня формы, которая вам нужна.
Вы можете передать строку подключения непосредственно в конструктор соединения.
Вы можете передать текст команды sql и соединение непосредственно в конструктор команды.
Пожалуйста, всегда используйте Параметры.Это не только избавит вас от неуместных кавычек, но и поможет обеспечить отправку правильных типов данных в базу данных.Самое главное, это помогает защитить вашу базу данных от внедрения SQL, что может уничтожить вашу базу данных.Я должен был угадать типы данных в вашей базе данных.Проверьте базу данных и измените код соответствующим образом.
Private ConnString As String = "server=localhost;user id=root;password=;database=bank"
Private Sub add()
Using cn As New MySqlConnection(ConnString)
Using cmd As New MySqlCommand("update cbank set Balance = Balance + @Balance where AccountID = @ID and PIN = @PIN;", cn)
cmd.Parameters.Add("@Balance", MySqlDbType.Decimal).Value = CDec(TextBox2.Text)
cmd.Parameters.Add("@ID", MySqlDbType.Int32).Value = CInt(TextBox1.Text)
cmd.Parameters.Add("@PIN", MySqlDbType.Int32).Value = CInt(TextBox3.Text)
cn.Open()
cmd.ExecuteNonQuery()
End Using
End Using
End Sub