vb.net 教程 8-3 数据库操作10-2

接上一节,下面开始正式进行修改

使用sql的update语句:

    Private Sub btnEdit1_Click(sender As Object,e As EventArgs) Handles btnEdit1.Click
        Dim id As Integer = cbEmployee.SelectedIndex + 1
        Dim odcommand As New OleDbCommand()
        odcommand.CommandText = "update 雇员 set 职务='" & txtDuties.Text &
                                    "',尊称='" & txtAppellation.Text &
                                    "',出生日期='" & dtpBirthday.Value &
                                    "',雇用日期='" & dtpEmployDay.Value &
                                    "',国家='" & txtCountry.Text &
                                    "',城市='" & txtCity.Text &
                                    "',地区='" & txtArea.Text &
                                    "',地址='" & txtAddress.Text &
                                    "',邮政编码='" & txtZipcode.Text &
                                    "',家庭电话='" & txtPhone.Text &
                                    "' where 雇员ID=" & id
        odcommand.Connection = odc

        Dim updateCount As Integer
        Try
            updateCount = odcommand.ExecuteNonQuery()
            MessageBox.Show("修改成功 " & updateCount & " 条")
        Catch ex As Exception
            MessageBox.Show("修改失败:" & ex.Message)
        End Try
    End Sub

odcommand.ExecuteNonQuery返回修改的条数。

也可以用加参数的方法

    Private Sub btnEdit2_Click(sender As Object,e As EventArgs) Handles btnEdit2.Click
        Dim id As Integer = cbEmployee.SelectedIndex + 1
        Dim odcommand As New OleDbCommand()
        odcommand.CommandText = "update 雇员 set 职务=@Duties,尊称=@Appellation,出生日期=@Birthday,雇用日期=@EmployDay,国家=@Country,城市=@City,地区=@Area,地址=@Address,邮政编码=@Zipcode,家庭电话=@Phone 
                                    where 雇员ID=" & id
        odcommand.Connection = odc
        odcommand.Parameters.Add("@Duties",OleDbType.VarChar)
        odcommand.Parameters("@Duties").Value = txtDuties.Text
        odcommand.Parameters.Add("@Appellation",OleDbType.VarChar)
        odcommand.Parameters("@Appellation").Value = txtAppellation.Text
        odcommand.Parameters.Add("@Birthday",OleDbType.Date)
        odcommand.Parameters("@Birthday").Value = dtpBirthday.Value
        odcommand.Parameters.Add("@EmployDay",OleDbType.Date)
        odcommand.Parameters("@EmployDay").Value = dtpEmployDay.Value
        odcommand.Parameters.Add("@Country",OleDbType.VarChar)
        odcommand.Parameters("@Country").Value = txtCountry.Text
        odcommand.Parameters.Add("@City",OleDbType.VarChar)
        odcommand.Parameters("@City").Value = txtCity.Text
        odcommand.Parameters.Add("@Area",OleDbType.VarChar)
        odcommand.Parameters("@Area").Value = txtArea.Text
        odcommand.Parameters.Add("@Address",OleDbType.VarChar)
        odcommand.Parameters("@Address").Value = txtAddress.Text
        odcommand.Parameters.Add("@Zipcode",OleDbType.VarChar)
        odcommand.Parameters("@Zipcode").Value = txtZipcode.Text
        odcommand.Parameters.Add("@Phone",OleDbType.VarChar)
        odcommand.Parameters("@Phone").Value = txtPhone.Text

        Dim updateCount As Integer
        Try
            updateCount = odcommand.ExecuteNonQuery()
            MessageBox.Show("修改成功 " & updateCount & " 条")
        Catch ex As Exception
            MessageBox.Show("修改失败:" & ex.Message)
        End Try

    End Sub

两种方法都可以使用。

最后别忘了窗体关闭的时候,关闭数据库连接:

    Private Sub Form6_Closing(sender As Object,e As CancelEventArgs) Handles Me.Closing
        odc.Close()
    End Sub


由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供参考。

学习更多vb.net知识,请参看vb.net 教程 目录

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强制返回为文本 --------------------------...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办法, Format 或者FormatDateTime 竟然结果和...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace My ‘全局错误处理,新的解决方案直接...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用的爽呀,这篇文章写与2011年,看来我以前没...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选中的单元格进行处理 Dim m As Range, t...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integ...