我想找出一条商品编号,很简单,帮看看。(50分)

  • 主题发起人 孔明.net
  • 开始时间

孔明.net

Unregistered / Unconfirmed
GUEST, unregistred user!
我在 ADODataSet1.CommandText加入
SELECT 商品编号
FROM 零售业务
where 商品编号="234" and 日期 between '02-12-2 11:53:22' and '02-12-8 11:35:51'
可是不对,帮看看呀,
 
如果是SQLSERVER 不能用双引号
商品编号=''234''
如果是ACCESS 日期用#号
日期>#02-12-2 11:53:22# and 日期<#02-12-8 11:35:51#
 
不行呀,大哥
SELECT 商品编号 FROM 零售业务 where 商品编号="234" and 日期 >#02-12-2 11:53:22# and 日期<#02-12-8 11:35:51#
 
如果你是用的ACCESS,可以先在ACCESS中的查询中新建一个查询,然后直接测试,
下面的语句我测试过没错
SELECT * from t1 where 姓名="123" and 日期>=#2002-01-01 10:22:03#;
 
应这样
SELECT 商品编号
FROM 零售业务
where 商品编号='234' and 日期 between '2002-12-02 11:53:22' and '2002-12-08 11:35:51'
 
把SQL语句放到ACCESS上执行一下看错在什么地方
 
SELECT 零售业务.商品编号
FROM 零售业务
WHERE (((零售业务.商品编号)="234") AND ((零售业务.日期)>#12/2/2002 12:53:12#) AND ((零售业务.日期)<#12/10/2002 12:53:12#))
在access上通过了,在delphi下不通过,

顺便问一下delphi可以调用access保存的“查询1“吗?
 
就用SELECT * FROM 查询1 就可以。
 
SELECT 零售业务.商品编号
FROM 零售业务
WHERE (((零售业务.商品编号)="234") AND ((零售业务.日期)>#12/2/2002 12:53:12#) AND ((零售业务.日期)<#12/10/2002 12:53:12#))

在access上通过了,在delphi下不通过,
大家帮想想呀,是怎么回事的?
 
报什么错误,贴出来看看
 
SELECT 零售业务.商品编号
FROM 零售业务
WHERE (((零售业务.商品编号)="234") AND ((零售业务.日期>:time1) AND ((零售业务.日期)<:time2))
parambyname('time1').asdatetime:=
 
我也碰到过这样的问题,好象要查询日期型的字段时,两个#号之间只能输入日期,不能加
入时间,你可以把日期当作double类型的来查询,也可以用ugvanxk的方法来,不过我要纠
正一下,如果你是用ADO的话,应这样写
with adoquery1 do
begin
if Active then Active := False;
SQL.Clear;
SQL.Add('SELECT 零售业务.商品编号 ');
SQL.Add('FROM 零售业务 ');
SQL.Add('WHERE (((零售业务.商品编号)="234") AND ((零售业务.日期)>:startdate AND ((零售业务.日期)<:enddate))');
Parameters.ParamByName('startdate').Value := 开始日期;
Parameters.paramByname('enddate').Value := 结束日期;
Active := True;
end;

 
把错误信息贴出来看一看
 
接受答案了.
 
顶部