CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  数据库相关

三级数据库查询出错,求救!

楼主bhamy()2005-06-30 08:56:58 在 Delphi / 数据库相关 提问

我的查询代码:  
  begin  
    if   edit1.Text=''   then  
          showmessage('请入图书证号')  
    else  
    begin  
   
      F_DM.Cds_clsoder.Close;  
      F_DM.Cds_clsoder.CommandText:='select   *   from   clsoder   where   class_master='+edit1.Text;  
      F_DM.Cds_clsoder.Execute;  
      F_DM.Cds_clsoder.Open;  
      F_DM.Cds_clsoder.Refresh;  
      end;  
  end;  
  查询结果出错提示:project   client.exe   raise   exception   class   EOleException   with   message   '列名'11225'无效'。process   stop....  
      无法查到当图书证号为:11225时所有的对应记录。请高手指点。谢谢! 问题点数:70、回复次数:14Top

1 楼lovend(颓废之吻)回复于 2005-06-30 09:06:38 得分 0

F_DM.Cds_clsoder是   clientdataset吗?  
   
      F_DM.Cds_clsoder.Execute;  
      F_DM.Cds_clsoder.Open;  
   
  只用下面那句就可以了吧   。  
   
  Top

2 楼bhamy()回复于 2005-06-30 09:33:52 得分 0

对的。F_DM.Cds_clsoder是   clientdataset  
  我要求是当在Edit1.text中输入图书证号时,在DBgrid中显示出与图书证号相对应的所有记录。  
  F_DM.Cds_clsoder.Execute;  
      F_DM.Cds_clsoder.Open;  
  也一样出错,怎么办?十分感谢!Top

3 楼fbincrazy(全职流氓@改)回复于 2005-06-30 09:34:28 得分 0

用open么   用execute干什么Top

4 楼bhamy()回复于 2005-06-30 09:38:31 得分 0

execute是执行commandText用的,我去掉F_DM.Cds_clsoder.Execute;或去掉   F_DM.Cds_clsoder.Refresh;或两句都去掉都试过,调试结果出现同样的错误。很怪!  
  Top

5 楼madyak(无天)回复于 2005-06-30 09:47:49 得分 0

双击Cds_clsoder控件,看看是不是有静态字段,而有一个字段名是11225,表格中正好没有与之对应的字段,导致查询出错Top

6 楼bhamy()回复于 2005-06-30 09:58:53 得分 0

11225不是字段名,它是字段bookNo里的一个记录。双击Cds_clsoder控件,里面是空的。怎么办?Top

7 楼bhamy()回复于 2005-06-30 10:39:50 得分 0

各位高手,请出出主意吧。我的问题还没解决呢Top

8 楼enjoymyself(你快乐所以我快乐)回复于 2005-06-30 11:21:05 得分 0

class_master是什么类型?如果是字符型,那这样写试一下  
  F_DM.Cds_clsoder.CommandText:='select   *   from   clsoder   where   class_master='  
  +   QuotedStr(edit1.Text);Top

9 楼madyak(无天)回复于 2005-06-30 11:52:41 得分 60

是不是少了引号  
  F_DM.Cds_clsoder.CommandText:='select   *   from   clsoder   where   class_master='''+edit1.Text+'''';  
  Top

10 楼bhamy()回复于 2005-06-30 12:05:35 得分 0

madyak说对了!我的问题解决了。非常感谢楼上的各位朋友。一个引号,烦得我快疯了,编程真苦!!Top

11 楼MudLib(Alan)回复于 2005-07-06 20:52:45 得分 0

没关系   ,习惯就好了!Top

12 楼hqhhh(枫叶)回复于 2005-07-06 20:55:59 得分 0

来晚了Top

13 楼hzwmjl(永远)回复于 2005-07-06 20:58:27 得分 0

大家来加入DELPHI程序群1805366   一起进步Top

14 楼jozosoft(水灵灵的乌兰诺娃)回复于 2005-07-07 08:31:02 得分 10

是少了引號.  
    F_DM.Cds_clsoder.CommandText:='select   *   from   clsoder   where   class_master='  
  +   ''''   +     edit1.Text   +   ''''   ;Top

相关问题

  • 查询数据库出错!!
  • 数据库查询出错,请各位帮帮忙
  • 关于数据库查询出错,谢谢
  • ACCESS数据库查询语句有日期条件时出错!
  • java 连接 access数据库 查询出错
  • 数据库出错
  • 数据库出错
  • 数据库出错
  • 一个简单的连接数据库,查询,怎么就出错呢?
  • 用where查询条件读取数据库出错,不知何解

关键词

  • 查询
  • 字段
  • 图书
  • clsoder
  • dm
  • 出错
  • cds
  • edit1
  • commandtext
  • 去掉

得分解答快速导航

  • 帖主:bhamy
  • madyak
  • jozosoft

相关链接

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

广告也精彩

反馈

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