数据库查询问题,在线等待
我在程序中用到Taodquery查询数据,我查询5月31号的那天,可是显示没有数据,但是在库中确是有600多条数据,在查询分析器中,用select语句就可以查出来,请问这是怎么回事呀? 问题点数:50、回复次数:21Top
1 楼paranoia190(190)回复于 2005-06-01 10:11:18 得分 5
帖代码!嘿咻嘿咻!
^_^Top
2 楼cdsgajxlp(起名很难)回复于 2005-06-01 10:12:14 得分 5
这个DataSource连了么
估计是连接的问题Top
3 楼meiqingsong(阿飛)回复于 2005-06-01 10:13:19 得分 5
估计是你Taodquery中的sql语句写的有问题,
你运行时将Taodquery.Sql取出来看看就知道了Top
4 楼liu23xing(编程小猫1000号)回复于 2005-06-01 10:13:35 得分 5
放出代码才是正道Top
5 楼Earthnut(*)回复于 2005-06-01 10:44:34 得分 5
Taodquery中sql语句有问题,把代码贴出来..Top
6 楼nice0934(nice0934)回复于 2005-06-01 11:20:08 得分 5
存储时间的字段在数据库中是日期型的吗?
没有代码很难说Top
7 楼dmyb7233(东东)回复于 2005-06-01 11:53:57 得分 5
注意日期型的写法Top
8 楼kwer(理想生活:白天种地,晚上上网 ) (▲▲▲▲▲▲)回复于 2005-06-01 14:02:00 得分 5
不贴 代码 ,怎么要别人帮你解决问题?
看看每个都有各的说法,哈Top
9 楼huanshen0634(绿色的地球)回复于 2005-06-02 09:02:27 得分 0
adoquery组件的sql原来属性为:
select t1.*,GoodsName,DepotName
from DayStockBatch t1,Goods,Depot
where t1.GoodsID=Goods.GoodsID
and t1.DepotID like :pDepotID
and t1.GoodsID like :pGoodsID
and Goods.GoodsTypeID like :pGoodsTypeID
and t1.DepotID=Depot.DepotID
and t1.Daytime>=:pBegin
and t1.Daytime<:pEnd
and t1.Status like :pStatus
and t1.BatchID like :pBatchID
order by t1.Daytime,t1.DepotID,t1.GoodsID
后面的参数等为该控件的Parameters属性中的参数
上面这句话,可以正常查询出数据来.
可是当我加上一句之后变成这样:
select t1.*,GoodsName,DepotName
from DayStockBatch t1,Goods,Depot
where t1.GoodsID=Goods.GoodsID
and t1.DepotID like :pDepotID
and t1.GoodsID like :pGoodsID
and Goods.GoodsTypeID like :pGoodsTypeID
and t1.DepotID=Depot.DepotID
and t1.Daytime>=:pBegin
and t1.Daytime<:pEnd
and t1.Status like :pStatus
and t1.BatchID like :pBatchID
and t1.fromwhere like :pfrom //加的是这一句,其他的没有改动
order by t1.Daytime,t1.DepotID,t1.GoodsID
当加上这一句之后,就查询不出数据来了,请问怎么解决?
在线等待,马上结贴!!!!
Top
10 楼fyt234(二当家)回复于 2005-06-02 09:06:49 得分 5
t1.fromwhere 看看这个字段属性和别的字段不同吧,like语句应该也有所不同!建议仔细查查SQL语句!!Top
11 楼huanshen0634(绿色的地球)回复于 2005-06-02 09:14:33 得分 0
t1.goodsid,t1.depotid,t1.batchid和t1.fromwhere都是varchar类型,写法应该上面的是一样的呀?
唯一不同的就是前3个字段的长度是20,而且不能为空,而fromwhere是50,允许为空Top
12 楼naner_china(naner)回复于 2005-06-02 09:31:29 得分 5
and isnull(t1.fromwhere,'') like :pfromTop
13 楼huanshen0634(绿色的地球)回复于 2005-06-02 10:00:08 得分 0
楼上的,fromwhere这个字段是后来添加的,不能设为不允许为空,只能允许为空,所以现在有很多的值都是NULL,但是我按照你的方法
select t1.*,GoodsName,DepotName
from DayStockBatch t1,Goods,Depot
where t1.GoodsID=Goods.GoodsID
and t1.DepotID like :pDepotID
and t1.GoodsID like :pGoodsID
and Goods.GoodsTypeID like :pGoodsTypeID
and t1.DepotID=Depot.DepotID
and t1.Daytime>=:pBegin
and t1.Daytime<:pEnd
and t1.Status like :pStatus
and t1.BatchID like :pBatchID
and ISNULL(t1.fromwhere,' ') like :pfrom
order by t1.Daytime,t1.DepotID,t1.GoodsID
可是还是不行呀?Top
14 楼huanshen0634(绿色的地球)回复于 2005-06-02 10:10:33 得分 0
再顶一下,希望各位帮我解决一下这个问题,万分感谢!!!!!!!!!!!Top
15 楼duxin(小伍)回复于 2005-06-02 10:17:25 得分 0
给值的时候把空格去掉
------------------------------------------------------------------------------
金盆洗澡 重出江湖 打劫.抢分 掀起一场腥风血雨 戒烟攒钱 只为换新车
Top
16 楼huanshen0634(绿色的地球)回复于 2005-06-02 10:22:56 得分 0
and ISNULL(t1.fromwhere,' ') like :pfrom
是不是这样:and ISNULL(t1.fromwhere,'') like :pfrom
如果是这样的话,我刚才已经拭过了,还是不行,查询不出数据来.这这句话去掉,就可以查出来.
真晕,到底是怎么回事呀?
各位谁给我解决了,我加分.
Top
17 楼naner_china(naner)回复于 2005-06-02 10:37:45 得分 0
format(
'select t1.*,GoodsName,DepotName
from DayStockBatch t1,Goods,Depot
where t1.GoodsID=Goods.GoodsID
and t1.DepotID like :pDepotID
and t1.GoodsID like :pGoodsID
and Goods.GoodsTypeID like :pGoodsTypeID
and t1.DepotID=Depot.DepotID
and t1.Daytime>=:pBegin
and t1.Daytime<:pEnd
and t1.Status like ''%%%s%%''
and t1.BatchID like ''%%%s%%''
and ISNULL(t1.fromwhere,' ') like ''%%%s%%''
order by t1.Daytime,t1.DepotID,t1.GoodsID',[pStatus,pBatchID,pfrom]);
Top
18 楼huanshen0634(绿色的地球)回复于 2005-06-02 10:40:58 得分 0
楼上的能解释一下这是什么意思吗?我有点看不明白Top
19 楼huanshen0634(绿色的地球)回复于 2005-06-02 10:42:46 得分 0
format是什么?Top
20 楼huanshen0634(绿色的地球)回复于 2005-06-02 11:08:39 得分 0
无奈之下再次顶一下Top
21 楼naner_china(naner)回复于 2005-06-02 11:12:23 得分 0
替换你的查询语句
上面三个参数改写如下,其他参数不变
,试试
sql.add(format(
'select t1.*,GoodsName,DepotName
from DayStockBatch t1,Goods,Depot
where t1.GoodsID=Goods.GoodsID
and t1.DepotID like :pDepotID
and t1.GoodsID like :pGoodsID
and Goods.GoodsTypeID like :pGoodsTypeID
and t1.DepotID=Depot.DepotID
and t1.Daytime>=:pBegin
and t1.Daytime<:pEnd
and t1.Status like ''%%%s%%''
and t1.BatchID like ''%%%s%%''
and ISNULL(t1.fromwhere,'') like ''%%%s%%''
order by t1.Daytime,t1.DepotID,t1.GoodsID',[pStatus,pBatchID,pfrom]));Top




