Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

怎样让多个查询同时执行?

小卫  发表于:2010-09-17 22:08:19  
复制

我现在要更新一个数据表,示例如下:

 
T3x T3z T4x T4z T6x T6z
566475 566475 566475
569675 569675 569675
570200 570200 570200
570225 570225 570225

我现在写的SQL语句只能对T3z、T4z等一列一列地更新,所以总共写了6个查询

现在就是想,有没有什么方法能把这6个查询“封装”到一起,实现一起执行?

特此请教各位前辈和高手,在此先谢过了!

附件中为该数据库:查询相同坐标并赋值

点击下载此附件

 

Top
wang decheng 发表于:2010-09-18 16:43:17

楼主可以使用宏啊

docmd.runsql

不论你有多少个,也可以转换成vba方式

就你的3个查询,由宏转变成vba方式如下:

***********************

Function 宏1()
On Error GoTo 宏1_Err

    DoCmd.SetWarnings False
    DoCmd.RunSQL "UPDATE total INNER JOIN yaodui ON total.T3x = yaodui.T3x SET total.T3z = [yaodui].[T3z]  WHERE (((total.T3x)=[yaodui].[T3x]));  ", -1
    DoCmd.RunSQL "UPDATE total, yaodui SET total.T4z = [yaodui].[T4z]  WHERE (((total.T4x)=[yaodui].[T4x]));  ", -1
    DoCmd.RunSQL "UPDATE total, yaodui SET total.T6z = [yaodui].[T6z]  WHERE (((total.T6x)=[yaodui].[T6x]));  ", -1
    DoCmd.SetWarnings True


宏1_Exit:
    Exit Function

宏1_Err:
    MsgBox Error$
    Resume 宏1_Exit

End Function


 



小卫 发表于:2010-09-18 20:24:14

试了试,成功了!

这个问题困扰了我几天,一直没解决~ 

wang decheng 太感谢你啦!



总记录:2篇  页次:1/1 9 1 :