我利用delphi6.0开发了一个sql2000数据库服务器的客户端程序,数据库中包含有7个表,其中有两个表的内容主要为可选项目并作为delphi窗体中的下拉框使用。本应用程序使用ADO技术,在公共数据模块中申明了ADOCONNECT组件,以及3个ADODATASET组件。在第一个dataset组件中包含有“select * from ///”,其中‘///’表示数据库中的7个表。第二个dataset组件中包含有“select * from Pic where Pic.main_id = Doc.main_id”其中pic和doc为两个表,字段main_id是相同类型的。但是在程序运行中出现了问题,提示为“列前缀‘doc’与查询中所用的表名或别名不匹配。”,请问应该如何解决?
再次感谢答疑!!!

解决方案 »

  1.   

    试试select * from Pic,doc where Pic.main_id = Doc.main_id
      

  2.   

    应该要改成这样。
    select * from Pic,doc where Pic.main_id = Doc.main_id
      

  3.   

    表的名称不全,中间少加了一个表的名称 doc,
    select * from Pic,doc where Pic.main_id = Doc.main_id
      

  4.   

    对楼上的同僚感激不尽!希望有机会一起更深入地探讨!QQ:96339(请注明delphi),再次感谢!!!
      

  5.   

    现在又有新问题了,这样说吧:
       有以下4个表(别名)
      文献资料,系统类别,内容类别,关键词库
    在文献资料中有两个dbcombobox分别对应系统类别和内容类别,
       系统类别中
     id  xtlb
     1    A
     2    B
       内容类别中
     nid id nrlb
      1   1  c
      2   1  d
      3   1  e
      4   1  f
      5   2  g
      6   2  h
      7   2  i
      8   2  j
      9   2  k希望在delphi中实现:
       当选择系统类别为A时,内容类别的下拉显示中只有c,d,e,f;
       当选择系统类别为B时,内容类别的下拉显示中只有g,h,i,j,k。
    请赐教!
      

  6.   

    select nrlb from neirong where id=:xitong.id