vb.net 锁定计算机,VB.NET SQL数据库锁定

我的数据表在两个地方,一个DataGridView和组合框装 组合框来选择要修改的记录(一个文本框输入一个新值) 而在DataGridView是看改变(我放弃了(现在)直接从DataGridView中更新)VB.NET SQL数据库锁定

Private Sub EditLoc_Load(sender As Object, e As EventArgs) Handles MyBase.Load

Try

con.Open()

Dim sql = Nothing

sql = "SELECT Location FROM Location"

Dim cmdDataGrid As SQLiteCommand = New SQLiteCommand(sql, con)

Dim da As New SQLiteDataAdapter

da.SelectCommand = cmdDataGrid

Dim dt As New DataTable

da.Fill(dt)

DataGridView1.DataSource = dt

Dim readerDataGrid As SQLiteDataReader = cmdDataGrid.ExecuteReader()

con.Close()

Catch ex As Exception

MsgBox(ex.Message)

End Try

Try ' TRY CATCH for combobox

con.Open()

cmd.Connection = con

cmd.CommandText = "SELECT Location FROM Location"

dr = cmd.ExecuteReader()

' Fill a combo box with the datareader

Do While dr.Read = True

ComboBox1.Items.Add(dr.GetString(0))

Loop

If ComboBox1.Items.Count > 0 Then

ComboBox1.SelectedIndex = 0 ' The first item has index 0 '

End If

con.Close()

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

问题是,当我点击保存,应用程序挂起了一会儿,然后我得到的“数据库已锁定”错误picture

这里是保存按钮的代码:

Private Sub Savebtn_Click(sender As Object, e As EventArgs) Handles Savebtn.Click

Try

con.Open()

cmd = con.CreateCommand

cmd.CommandText = "UPDATE Location set Location = '" & TextBox1.Text & "' WHERE Location = '" & ComboBox1.Text & "'"

cmd.ExecuteNonQuery()

cmd.Dispose()

con.Close()

Catch ex As Exception

MsgBox(ex.Message)

End Try

End Sub

感谢您的帮助

+0

* Everythjing *具有'的Dispose()'方法应予以处置后调用拉();始终使用SQL参数;并且不使用全局提供者对象。 –

+0

感谢您的回复,请您详细说明一下吗? –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值