一个SQL的问题(100分)

  • 主题发起人 主题发起人 bianconeri
  • 开始时间 开始时间
B

bianconeri

Unregistered / Unconfirmed
GUEST, unregistred user!
五个表,客户、定单、产品、资金、主表。其中客户与主表通过客户ID相关,
产品与主表通过产品ID相关,主表与另外两个表通过定单ID相关。
我要把五个表的所有字段都显示在一个DBGRID中,form上设置了一个datasource,
一个query,一个dbgrid。DBGRID.datasource为datasource1,datasource.dataset为
query1。我在query1的sql特性中写了
select d1.chanpinming,
d1.danweibz,
d1.xueqi,
d1.ceshu,
d2.yunshu,
d2.jingbanren
from db_chanpin.db d1,db_main.db d2
where d1.chanpinid=d2.chanpinid
但是设置query1的active为ture的时候提示说type mismatch in expression.
我把字段和数据库都加双引号试过多次。就是没有用。
望指点一下是怎么回事
 
chanpinid chanpinid是不是它两个类型不匹配。
你可以select chanpinid from d1 addfields
select chanpinid from d2 addfields
然后看看其类型
 
看一下两个字段的类型!
 
select d1.chanpinming,
d1.danweibz,
d1.xueqi,
d1.ceshu,
d2.yunshu,
d2.jingbanren
from db_chanpin.db d1,db_main.db d2
where d1.chanpinid=d2.chanpinid
把这句话直接放在数据库中执行,看看出错信息,
肯定是字段不符。
 
不该有错,看看你的库结构
 
如果你的DBGrid上的字段名是在设计时指定的,那么请检查DBGrid的字段定义是否与实际相符。
 
同意楼上
还有d1.chanpinid,d2.chanpinid是否类型一致
你试试这样。
select * from
from db_chanpin.db d1,db_main.db d2
where d1.chanpinid=d2.chanpinid
这样可以检查DBGrid的字段定义是否与实际各字段相符

 
是字段类型不符合
一个是auto字段
还一个是string

不知道SQL怎么写可以挑选出两个植相等的记录
还望指点
我对SQL了解的太少了
 
AutoInc类型字段只与Integer类型的字段兼容
 
多人接受答案了。
 
后退
顶部