riqi为日期型字段,表名为szdj,access数据库。select * from szdj where datepart(wk,riqi)=datepart(wk,now)出错,提示参数mm没有默认值。select * from szdj where datepart(''wk'',riqi)=datepart(''wk'',now)出错,提示语法错误,操作符丢失。
解决方案 »
- 如何写SQL查询语句?
- 怎样能在查询结果中设定修改的值?解决了即给分,谢谢!
- 关于线程插入函数如何用的问题
- 新手上路,关于程序运行时最大化最小化的问题?
- delphi全局变量的问题~
- Delphi (6、7)可以实现类似与 C#或Java 一样的反射功能吗?
- 关于ActiveX控件的定义事件的问题!!!!!!!!!!!!!!!!!!!!!!!!!!????????????
- 怎样利用TStream读取可执行文件中的图片?如一些安装程序,屏幕保护程序等。
- 送分狂人再次送分:我编译好的程序拿到其他机器上运行为何报错?
- 关于邮件列表的问题!
- delphi中窗体最小化问题
- spcomm控件中的comm1如何接收ASCII码,并把数据显示到edit控件???
ADOQuery1.SQL.Text := 'select * from szdj where datepart(wk,riqi)=datepart(wk,:mm)';
ADOQuery1.Parameters.ParamByName('mm').Value := now;
ADOQuery1.Open;或者 ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text := 'select * from szdj where datepart(wk,riqi)=datepart(wk,getdate())';
ADOQuery1.Open;
就出错了。错误看来在datepart(wk,riqi)上。
select datepart(wk,riqi)from szdj在查询分析器里上面的语句都正常但是在adoquery里就提示:参数wk没有默认值
来看看你的语句对不对
字段的值赋没赋上啊?
你把now 改 为now();
看这样行不行
select datepart(wk,riqi)from szdj 在access提示wk没有默认值,在Sqlserver里通过。access里我试了很多了,包括select datepart(''wk'',riqi)from szdjselect datepart(''wk'',[riqi])from szdj都不行啊
m正常,mm不行
ww正常,wk不行
参数必须加双引号,不加不行,两个单引号不行 必须是"xx"不能是''xx''多谢monkely,结贴