CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  数据库相关

我在access2000中建了个查询(视图),DELPHI连接这个库后,可以把这个查询当作一个表,但是我想在delphi中给access中的查询传递参数,应

楼主dpbug()2004-05-03 10:54:18 在 Delphi / 数据库相关 提问

我在access2000中建了个查询(视图),DELPHI连接这个库后,可以把这个查询当作一个表,但是我想在delphi中给access中的查询传递参数,应该怎么做? 问题点数:100、回复次数:17Top

1 楼duanazhu(阿朱)回复于 2004-05-03 12:22:18 得分 0

晕~~~~~~~~~~~你能不能说清楚一点?如果delphi是把那个视图当作一个表,那么就跟普通表的参数传递一样啦Top

2 楼lxftwo(小小人儿)回复于 2004-05-03 12:39:50 得分 0

就是啦,阿朱说得对,同样是表,传递方法也一样。  
   
  select   *   from   .....  
  where   field=:pdate  
   
  ....  
  Parameters.ParamByName('pdate').Value:=xxxTop

3 楼Jasonn(一万年太久,只争朝夕)回复于 2004-05-03 12:49:03 得分 0

SQL处理上   视图   和   表   没什么区别  
   
  传递的参数是不是WHERE的筛选条件,还是其他  
   
  把问题具体点呢?Top

4 楼jacbey(从来没怪你)回复于 2004-05-03 13:03:46 得分 0

你把视图   当做   表   一样用就是了,反正写好SQL字符串给数据库就是了Top

5 楼dpbug()回复于 2004-05-03 13:16:33 得分 0

我说清楚点  
   
  access中的视图:  
  视图名称为:查询1  
  SELECT   [编号]   FROM   商品   WHERE   [日期]   >   [查询日期:]  
  其中的[查询日期:]就是我要用Delphi编程传递给它的条件啊  
   
  delphi中这样调用的:  
  ADOQUERY.SQL.TEXT   :=   'SELECT   名称,   编号   FROM   仓库   INNER   JOIN   查询1   WHERE   查询1.编号   =   仓库.编号';  
   
  怎样才能把   查询日期   的数值传递给视图呢?      
  Top

6 楼DebugXP(NULL)回复于 2004-05-03 19:41:37 得分 0

PARAMETERS   aa   DateTime;  
  SELECT   [编号]   FROM   商品   WHERE   [日期]   >   aa   ;  
   
  日期字段必须为DateTime型  
  调用时的参数传递和存储过程一样Top

7 楼dpbug()回复于 2004-05-03 22:24:50 得分 0

楼上的兄弟,你给的代码是delphi中的还是access视图中的?Top

8 楼dpbug()回复于 2004-05-03 22:27:50 得分 0

那delphi中怎么传递参数给aa呢Top

9 楼liulangnanhai(流浪男孩)回复于 2004-05-04 14:47:15 得分 0

Adoquery1.close;  
  adoquery1.sql.text:=   'select   *   from     ViewName   where   field=:   Value   '  
  adoquery1.Open;  
  ....  
  Parameters.Params[0].Value:='123'  
   
   
  Top

10 楼dpbug()回复于 2004-05-04 17:32:48 得分 0

楼上的不要乱说,明显在糊弄人Top

11 楼youcheng1(晓松)回复于 2004-05-04 17:51:11 得分 0

在VB中是可以给ACCESS中的查询传递参数的,在DELPHI中我还不知道方法,有答案通知我一声。Top

12 楼dpbug()回复于 2004-05-04 18:05:23 得分 0

经过某位大侠提示,  
  我在access中写了           视图——“查询6”  
  PARAMETERS   aa   Long;  
  SELECT   编号   FROM   商品   WHERE   单位<=aa;  
   
  Delphi中代码  
  begin  
    ADOStoredProc1.close;  
    ADOStoredProc1.Parameters.Clear;  
    ADOStoredProc1.Parameters.CreateParameter('aa',ftinteger,pdinput,0,0);  
    ADOStoredProc1.Parameters.Items[0].Value:=2;  
    ADOStoredProc1.ProcedureName   :=   '查询6';  
    ADOStoredProc1.open;  
    ADOQuery.SQL.TEXT   :=   'SELECT   *   FROM   查询6';  
    ADOQuery.Open;  
  end;  
  其中   ADOStoredProc1.DataSource连接到了Datasource1,datasource1的dataset是adoquery1;ADOStoredProc1和adoquery1通过同一个adoconnecting连接到了access数据库  
   
  但是运行后:“系统提示参数aa没有默认值”,怎么回事啊,求助  
  大概就剩最后一步了  
  Top

13 楼youcheng1(晓松)回复于 2004-05-04 18:20:28 得分 0

调用成功了,用ADOStoredProc,可以给查询传递参数。  
  你的ADOStoredProc的parameters属性连接到“查询6”,再设计ADOStoredProc的参数就行了。Top

14 楼youcheng1(晓松)回复于 2004-05-04 18:21:49 得分 0

错了,是ADOStoredProc的procedurename属性连接到“查询6”.Top

15 楼BigQLL()回复于 2004-05-04 21:12:31 得分 100

我把源代码发到你的邮箱里了Top

16 楼dpbug()回复于 2004-05-04 21:14:24 得分 0

我的语句没有错啊,procedurename直接赋值也可以的。  
  我看看   bigqll的代码再说Top

17 楼dpbug()回复于 2004-05-04 21:18:22 得分 0

运行通过了,只不过你是用静态连接的,我想动态一定也可以吧,感谢bigqll的源代码Top

相关问题

  • asp里查询视图???
  • 查询视图错误
  • 一个视图查询小问题
  • 关于视图查询的问题
  • inner join和视图查询哪个快?
  • delphi 查询问题
  • 如何在BCB中建立视图?
  • 奇怪的问题,用查询分析器执行视图可以得到结果,但为什么在delphi里用table调用却不行了?
  • Delphi中SQL查询问题
  • delphi的多条件查询

关键词

  • 视图
  • 查询
  • delphi
  • access
  • sql
  • 传递
  • 参数
  • adoquery
  • 日期
  • 当作一个表

得分解答快速导航

  • 帖主:dpbug
  • BigQLL

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo