VB.NET数据库更新问题
时间:2011-12-07
来源:互联网
Dim connStr, updateCmd As String
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=电台列表.mdb"
Dim cmd As OleDbCommand, conn As OleDbConnection
conn = New OleDbConnection(connStr)
conn.Open()
updateCmd = "Update " & currentDatatableName & " Set A_Name = @电台名称,A_Style = @电台风格,A_Website = @电台网址,A_Url = @链接地址 Where A_Position = @地理位置"
cmd = New OleDbCommand(updateCmd, conn)
cmd.Parameters.Add(New OleDbParameter("@电台名称", OleDbType.Char))
cmd.Parameters.Add(New OleDbParameter("@地理位置", OleDbType.Char))
cmd.Parameters.Add(New OleDbParameter("@电台风格", OleDbType.Char))
cmd.Parameters.Add(New OleDbParameter("@电台网址", OleDbType.Char))
cmd.Parameters.Add(New OleDbParameter("@链接地址", OleDbType.Char))
cmd.Parameters("@电台名称").Value = newStation.nameTextBox.Text
cmd.Parameters("@地理位置").Value = newStation.positionTextBox.Text
cmd.Parameters("@电台风格").Value = newStation.styleComboBox.Text
cmd.Parameters("@电台网址").Value = newStation.websiteTextBox.Text
cmd.Parameters("@链接地址").Value = newStation.urlTextBox.Text
cmd.ExecuteNonQuery()
conn.Close()
作者: yzhangling 发布时间: 2011-12-07
路径是否正确
作者: q107770540 发布时间: 2011-12-07
普通方式(最常用)连接ACCESS数据库: "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\App1\你的数据库名.mdb; User Id=admin; Password=" 使用工作组方式(系统数据库)连接ACCESS数据库: "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\App1\你的数据库名.mdb; Jet OLEDB:System Database=c:\App1\你的系统数据库名.mdw" 连接到带有密码的ACCESS数据库: "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\App1\你的数据库名.mdb; Jet OLEDB:Database Password=你的密码" 连接到处于局域网主机上的ACCESS数据库: "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=\\Server_Name\Share_Name\Share_Path\你的数据库名.mdb" 连接到处于远程服务器上的ACCESS数据库: "Provider=MS Remote; Remote Server=http://远程服务器IP; Remote Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\App1\你的数据库名.mdb"
作者: q107770540 发布时间: 2011-12-07
路径是否正确
我将数据表放到DEBUG中的,没问题,对该数据库中数据表数据的删除、查找、添加都实现了,就是更新数据时,程序并不报错,但是数据没有改变。
作者: yzhangling 发布时间: 2011-12-07
是不是测试数据搞错了....
Where A_Position = @地理位置
cmd.Parameters("@地理位置").Value = newStation.positionTextBox.Text
确认下这条记录是否存在...
作者: bearlin081001 发布时间: 2011-12-07
SQL SEVER2008的话,我记得 如果UPDATE 不存在的数据是不报错的
是不是测试数据搞错了....
Where A_Position = @地理位置
cmd.Parameters("@地理位置").Value = newStation.positionTextBox.Text
确认下这条记录是否存在...
我就是在当前这条记录上进行修改,这条记录数据库表里是有的。
作者: yzhangling 发布时间: 2011-12-07
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=电台列表.mdb"
Dim cmd As OleDbCommand, conn As OleDbConnection
conn = New OleDbConnection(connStr)
conn.Open()
updateCmd = "Update " & currentDatatableName & " Set A_Name = @电台名称,A_Style = @电台风格,A_Website = @电台网址,A_Url = @链接地址 Where A_Position = @地理位置"
cmd = New OleDbCommand(updateCmd, conn)
cmd.Parameters.Add(New OleDbParameter("@电台名称", OleDbType.Char))
cmd.Parameters.Add(New OleDbParameter("@地理位置", OleDbType.Char))
cmd.Parameters.Add(New OleDbParameter("@电台风格", OleDbType.Char))
cmd.Parameters.Add(New OleDbParameter("@电台网址", OleDbType.Char))
cmd.Parameters.Add(New OleDbParameter("@链接地址", OleDbType.Char))
cmd.Parameters("@电台名称").Value = newStation.nameTextBox.Text.trim
cmd.Parameters("@地理位置").Value = newStation.positionTextBox.Text.trim
cmd.Parameters("@电台风格").Value = newStation.styleComboBox.Text.trim
cmd.Parameters("@电台网址").Value = newStation.websiteTextBox.Text.trim
cmd.Parameters("@链接地址").Value = newStation.urlTextBox.Text.trim
cmd.ExecuteNonQuery()
conn.Close()
作者: eaqpi 发布时间: 2011-12-07
作者: eaqpi 发布时间: 2011-12-07
作者: bearlin081001 发布时间: 2011-12-07
在最后,吧updateCmd,用msgbox打印出来看一下,对不对不就是了
updateCmd打印出来后,参数传递是正确的,但是还是不能更新数据库!!!
作者: yzhangling 发布时间: 2011-12-07
Dim connStr, updateCmd As String connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=电台列表.mdb" Dim cmd As OleDbCommand, conn As OleDbConnection conn = New OleDbConnection(connStr) Try conn.Open() updateCmd = "Update " & currentDatatableName & " Set A_Name = @电台名称,A_Style = @电台风格,A_Website = @电台网址,A_Url = @链接地址 Where A_Position = @地理位置" cmd = New OleDbCommand(updateCmd, conn) cmd.Parameters.Add(New OleDbParameter("@电台名称", OleDbType.Char)) cmd.Parameters.Add(New OleDbParameter("@地理位置", OleDbType.Char)) cmd.Parameters.Add(New OleDbParameter("@电台风格", OleDbType.Char)) cmd.Parameters.Add(New OleDbParameter("@电台网址", OleDbType.Char)) cmd.Parameters.Add(New OleDbParameter("@链接地址", OleDbType.Char)) cmd.Parameters("@电台名称").Value = Me.nameTextBox.Text.trim cmd.Parameters("@地理位置").Value = Me.positionTextBox.Text.trim cmd.Parameters("@电台风格").Value = Me.styleComboBox.Text.trim cmd.Parameters("@电台网址").Value = Me.websiteTextBox.Text.trim cmd.Parameters("@链接地址").Value = Me.urlTextBox.Text.trim cmd.ExecuteNonQuery() Catch ex As Exception MsgBox(ex.Message.ToString) End Try End Sub
看看报什么错误
作者: eaqpi 发布时间: 2011-12-07
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28