设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 1184|回复: 13
打印 上一主题 下一主题

各位斑竹 大侠,我很辛苦,帮下忙吧,感恩不敬!!!!

[复制链接]
跳转到指定楼层
1#
发表于 2003-2-11 15:47:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我自己每十天都要同时运行差不多上千个查询语句,可是我对数据库不太熟悉.只能在"ctrl+g"立即窗口中运行,而且这个窗口每次只能放入100多个查询语句,有时我有几千个语句,经常得慢慢分割几十个文件,逐个放进立即窗口.

   放进立即窗口后,我又不太熟悉语句,我写的语句,又要在立即窗口中,不停的按回车键.

   几千个语句,分段放入立即窗口,又要不停的按回车键,太辛苦了,各位朋友,帮下忙吧.

    前段时间,有热心人,指点了一下,可是,我不太熟悉数据库,不明白,能否说明白点,最好能发个样板数据库. 感恩不敬!!!!  感恩不敬!!!!

   我的语句(几千个基本上都是一样的)是:
DoCmd.RunSQL "UPDATE [表1] SET [表1].简日期 = 'AAA' WHERE ((([表1].输入内容) Like '*A*'))"  
DoCmd.RunSQL "UPDATE [表1] SET [表1].简日期 = 'BBB' WHERE ((([表1].输入内容) Like '*B*'))"  
- - - - - - - -

                                   lyz 77552186@163.com
[em26][em26][em26]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
14#
发表于 2003-2-17 22:03:00 | 只看该作者
设计多个查询不就很简单地解决了吗?
13#
发表于 2003-2-13 20:09:00 | 只看该作者
如果很多语句都有相似之处的话,如下操作,相信能减少语句数量:
dim i as long,temp as string
for i=65 to 90      'asc("A")=65     'asc("Z")=90
   temp=chr(i)+chr(i)+chr(i)
   DoCmd.RunSQL "UPDATE [表1] SET [表1].简日期 = '"+temp+"' WHERE ((([表1].输入内容) Like '*"+chr(i)+"*'))"
next i
当然,你需要设置的数据及更新条件可能不是 "AAA","*A*","BBB","*B*"......
但你可以按这个思路去做

过程太大,可以使用一个总过程调用小过程的方式嘛:
如下:
private sub a()
b
c
end sub

private sub b()
docmd ....
...
end sub

private sub c()
...
end sub
12#
发表于 2003-2-12 17:13:00 | 只看该作者
既然是过程过大,就肯定要分割,但也只需要按一次按钮,比如你要分成三个过程:
Private Sub Command6_Click()
语句1



call process1
call process2
End Sub

Private Sub process1()



语句m
End Sub

Private Sub process2()



语句n
End Sub

不过我想可能不用上千个更新语句,也许只用一个或多个循环,只需十条八条语句就可以搞定了。

[此贴子已经被作者于2003-2-12 9:12:31编辑过]

11#
发表于 2003-2-11 18:19:00 | 只看该作者
我也遇到过此类问题,不知如何解决?请各位高手赐教
10#
 楼主| 发表于 2003-2-11 18:16:00 | 只看该作者
我又试了一下,解决了我不停的按回车键问题.
  但是,我的代码太大,只能分割几部分,否则会出现"过程太大".能否不用分割,解决"过程太大"???
9#
 楼主| 发表于 2003-2-11 17:27:00 | 只看该作者
基本成功了,真不知如何报答您
8#
发表于 2003-2-11 17:18:00 | 只看该作者
在这两句之间吧:
Private Sub Command6_Click()

End Sub

7#
 楼主| 发表于 2003-2-11 17:08:00 | 只看该作者
这位侠客,您好
我已找见“代码生成器”,可是有很多英文,不知从那个英文下,贴进我的代码??
Option Compare Database
Private Sub Command6_Click()

End Sub
Private Sub Command7_Click()
On Error GoTo Err_Command7_Click

    Screen.PreviousControl.SetFocus
    DoCmd.FindNext

Exit_Command7_Click:
    Exit Sub

Err_Command7_Click:
    MsgBox Err.Description
    Resume Exit_Command7_Click
   
End Sub
6#
发表于 2003-2-11 16:53:00 | 只看该作者
在窗体上放置一下按钮,当有向导出现时按取消。然后选中该按钮单击右键,出现一个弹出菜单后选"事件生成器",然后会弹出一个对话框,再选“代码生成器”,然后就把你的代码粘贴进去吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-29 19:07 , Processed in 0.098062 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表