ts是不是一个变量啊如果是一个变量的话,那就应该是这样写
Q_jrjy.SQL.Add('select * from jsb where datediff('+#39+'d'+#39+',借书日期,sysdate())>:ts');
Q_jrjy.Parameters.ParamByName('ts').Value:=你指定的数值;
Q_jrjy.SQL.Add('select * from jsb where datediff('+#39+'d'+#39+',借书日期,date())>ts');
这样子不应该有错误,
你应该学会调试
1:Q_jrjy.SQL.Add('select * from jsb where datediff('+#39+'d'+#39+',#2005-01-01#,date())>10'); 会不会报错
2。若第一步正确 证明datediff语法写的正确,再试:
Q_jrjy.SQL.Add('select * from jsb where datediff('+#39+'d'+#39+',#2005-01-01#,date())>ts');
会不会报错?若报 则ts有问题,ts是字段名称 还是参数 若是参数 则:ts
若不报错
3。Q_jrjy.SQL.Add('select * from jsb where datediff('+#39+'d'+#39+',借书日期,date())>ts'); 会不会报错,若报 说明不支持汉字字段名称。。。