设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2403|回复: 6
打印 上一主题 下一主题

[窗体] 如何通过窗体上的控件向存储过程传递参数?谢谢!

[复制链接]
跳转到指定楼层
1#
发表于 2005-3-7 21:07:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
SELECT 发货日期, 产品ID, SUM(数量) AS 数量

FROM dbo.基础查询

GROUP BY 发货日期, 产品ID

HAVING (发货日期 >= @日报开始日期) AND (发货日期 <= @日报结束日期)

@日报开始日期 希望通过一个名称为'日报开始日期'的文本框传入

@日报结束日期 希望通过一个名称为'日报开始日期'的文本框传入

应如何处理?

谢谢!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-3-7 23:30:00 | 只看该作者
用&将字符串同控件的值连起来,组合成一个theSQLString字符串,例如:theSQLstring = "SELECT 发货日期, 产品ID, SUM(数量) AS 数量 FROM dbo.基础查询 GROUP BY 发货日期, 产品ID" _

& " HAVING (发货日期 >= " & [日报开始日期控件] & ") AND (发货日期 <= " & [日报结束日期控件] & ")"要注意空格和括号不要漏掉。例如 "产品ID" & "having ..." 就在having前漏空格了。最后& ")"没有就漏括号了。等等。数据类型,null值和单引号也要密切关注一下,特别是如果涉及到的是存储过程。参数传递到存储过程中后,有些数据类型是自动转换的,有的则不行。具体的要参考VB和SQL的帮助。如果可能出现null值,则应该用nz函数(在Access中)将null值替换成一个实际数值。如果输入有可能出现单引号,则应该用Replace函数(还是在Access中)把一个单引号替换成两个单引号。
3#
发表于 2005-3-7 23:33:00 | 只看该作者
也可以手工用ADODB的connetion,command等对象写一个通用的(不仅用于Access ADP)的设置连接、设置command对象,添加输入和输出参数,这个在Access的VBA帮助里很详细。
4#
 楼主| 发表于 2005-3-8 16:25:00 | 只看该作者
谢谢!试试先 :)
5#
发表于 2005-11-4 21:32:00 | 只看该作者
顶!谢了!!!
6#
发表于 2005-11-4 21:35:00 | 只看该作者
请问控件的引用是否象MDB一样:如Forms![主窗体]![子窗体]![控件] ??当然我也会试试
7#
发表于 2005-11-6 03:38:00 | 只看该作者
这个是存储过程吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-15 12:30 , Processed in 0.085959 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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