请教access链接sql执行update语法

zjl8008 2013-04-23 11:37:54
如下语句,会提示[Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 1。
update t_system as t1,t_system as t2 IN ODBC[ODBC;Driver=SQL Server;Server=.;Uid=sa;Pwd=chnyo2009;database=his_chnyo2] set t1.sl=t2.sl,t1.je=t2.je,t1.xmz=t2.xmz,t1.bz=t2.bz,t1.rq=t2.rq,t1.bz2=t2.bz2 WHERE t1.bh =t2.bh and t1.modidate>#2000-01-01 00:00:00# and t1.regid=1
在去掉最后面的“and t1.regid=1”后可以成功执行
但在t1表也就是access中的t_system中确实存在列 regid ,在sql的表t_system t2中没有此列
怎么还报错呢?
考虑到access方便性才用它来做个本地缓存的,实在不行就换其他数据库了
...全文
174 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjl8008 2013-04-26
  • 打赏
  • 举报
回复
7#,8#,可以,谢谢
wwwwb 2013-04-26
  • 打赏
  • 举报
回复
select * from t_system as t1 INNER JOIN [ODBC;Driver=SQL Server;Server=.;Uid=sa;Pwd=chnyo2009;database=his_chnyo2].t_system as t2 ON t1.bh =t2.bh WHERE t1.modidate>#2000-01-01 00:00:00# and t1.regid=1 能否运行
wwwwb 2013-04-26
  • 打赏
  • 举报
回复
update t_system as t1 INNER JOIN
[ODBC;Driver=SQL Server;Server=.;Uid=sa;Pwd=chnyo2009;database=his_chnyo2].t_system as t2
ON t1.bh =t2.bh
set T1.sl=t2.sl,t1.je=t2.je,t1.xmz=t2.xmz,t1.bz=t2.bz,t1.rq=t2.rq,t1.bz2=t2.bz2 WHERE t1.modidate>#2000-01-01 00:00:00# and t1.regid=1
 这个语句呢?
zjl8008 2013-04-26
  • 打赏
  • 举报
回复
access(有regid列)和sql(无regid列)中都有t_system表,我想用sql中的数据更新access中的数据, 上面的语句好像是更新的也是sql中的。 不行的话就放弃update语句了,先delete,再insert吧
wwwwb 2013-04-26
  • 打赏
  • 举报
回复
t_system是ACCESS的表?检查一下,其中有regid字段?
zjl8008 2013-04-26
  • 打赏
  • 举报
回复
引用 2 楼 WWWWA 的回复:
直接在ACCESS中运行 update t_system as t1,t_system as t2 IN ODBC[ODBC;Driver=SQL Server;Server=.;Uid=sa;Pwd=chnyo2009;database=his_chnyo2] set t1.sl=t2.sl,t1.je=t2.je,t1.xmz=t2.xmz,t1.bz=t2.bz,t1.rq=t2.rq,t1.bz2=t2.bz2 WHERE t1.bh =t2.bh and t1.modidate>#2000-01-01 00:00:00# and t1.regid=1 提示什么
直接运行提示输入t1.regid, 应是t1也从odbc里读取了,也就是update的也是odbc里的表了。。
ACMAIN_CHM 2013-04-23
  • 打赏
  • 举报
回复
直接在ACCESS的查询中执行一下这个SQL语句,应该不象是语句的问题,检查一下程序代码。
WWWWA 2013-04-23
  • 打赏
  • 举报
回复
直接在ACCESS中运行 update t_system as t1,t_system as t2 IN ODBC[ODBC;Driver=SQL Server;Server=.;Uid=sa;Pwd=chnyo2009;database=his_chnyo2] set t1.sl=t2.sl,t1.je=t2.je,t1.xmz=t2.xmz,t1.bz=t2.bz,t1.rq=t2.rq,t1.bz2=t2.bz2 WHERE t1.bh =t2.bh and t1.modidate>#2000-01-01 00:00:00# and t1.regid=1 提示什么
WWWWA 2013-04-23
  • 打赏
  • 举报
回复
update t_system as t1 INNER JOIN [ODBC;Driver=SQL Server;Server=.;Uid=sa;Pwd=chnyo2009;database=his_chnyo2].t_system as t2 ON t1.bh =t2.bh set T1.sl=t2.sl,t1.je=t2.je,t1.xmz=t2.xmz,t1.bz=t2.bz,t1.rq=t2.rq,t1.bz2=t2.bz2 WHERE t1.modidate>#2000-01-01 00:00:00# and t1.regid=1

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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