批量更新查询结果数据总是不成功?求教

zcgvb 2014-07-25 10:59:49
程序语言是VB.net ,数据库是Access,执行以下语句总是不成功,请各位帮忙看看
方案一、
Dim upgsmc As String = "update zlb as 公司名称,lrb as 公司名 set zlb.公司名称=lrb.公司名 where zlb.订单号码=lrb.单号"
Dim upgsmccommand As OleDbCommand = New OleDbCommand(upgsmc, kdfConn)
upgsmccommand.ExecuteNonQuery()

方案二、
Dim upgsmc As String = "update zlb set 公司名称=lsb.公司名 from (select 单号, 公司名 FROM lrb) lsb where 运单号码 in ( lsb.单号)"
Dim upgsmccommand As OleDbCommand = New OleDbCommand(upgsmc, kdfConn)
upgsmccommand.ExecuteNonQuery()
以上两个方法都不成功,请问如何解决
...全文
142 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zcgvb 2014-07-25
  • 打赏
  • 举报
回复
我是用的Access,程序语言vb.net。使用方案一不成功为什么呢?
Tiger_Zhao 2014-07-25
  • 打赏
  • 举报
回复
不同的数据库有不同的语法,比如 SQL Server
-- C.通过 UPDATE 语句使用来自另一个表的信息
-- 本示例修改表 titles 中的 ytd_sales 列,以反映表 sales 中的最新销售记录。

UPDATE titles
SET ytd_sales = titles.ytd_sales + sales.qty
FROM titles, sales
WHERE titles.title_id = sales.title_id
AND sales.ord_date = (SELECT MAX(sales.ord_date) FROM sales)
zcg 2014-07-25
  • 打赏
  • 举报
回复
试试这样吧:update zlb as z,lrb as l set z.公司名称=l.公司名 where z.订单号码=l.单号
Tiger_Zhao 2014-07-25
  • 打赏
  • 举报
回复
看错误提示分析啊!

又:这两个别名很奇怪
update zlb as 公司名称,lrb as 公司名 ...

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧