问题未解决,另开一贴(SQL语句)

sunny8226 2004-12-01 09:02:34

我的表里面有一字段记录时间(即录入该条记录的时间),我要判断一下,该时间与当前日期相差大与一个月的记录就删除。请问如何写SQL语句??

用了delete from table where datediff(month,dateColumn,getdate())>1

运行后出错:参数不足,期待值是2
为什么?
该如何写呢?
...全文
91 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunny8226 2004-12-01
  • 打赏
  • 举报
回复
我代码是这样的,其中‘LiveIn’是表中字段,是日期型的,Date是当前日期,
如果超过一个月的话就删除。

DBConnection.Execute ("delete from MainStatus where (DateDiff('m', LiveIn, Date)>0)")

运行到这句时老提示::参数不足,期待值是1,为什么呢》?
错误出在哪呢??


zyg0 2004-12-01
  • 打赏
  • 举报
回复
delete from [table] where datediff(month,dateColumn,getdate())>1
sunny8226 2004-12-01
  • 打赏
  • 举报
回复
运行到这句时老提示::参数不足,期待值是1,为什么呢》?
错误出在哪呢??
bboos 2004-12-01
  • 打赏
  • 举报
回复
注意'm'是半角双引号,所有的单引号都要改成 双引号
bboos 2004-12-01
  • 打赏
  • 举报
回复
在 access 中:of123()回答
//"delete from table where datediff('m',dateColumn,date())>1"
正解!!!
注意'm'是半角单引号,dateColumn为日期字段!!
of123 2004-12-01
  • 打赏
  • 举报
回复
你的 SQL 语句不在字符串引号中吗? VB 是不检查字符串内部语法的。

仔细看看你的代码。
of123 2004-12-01
  • 打赏
  • 举报
回复
"delete from table where datediff(""m"",dateColumn,date())>1"
sunny8226 2004-12-01
  • 打赏
  • 举报
回复
cuizm(射天狼)

是access ,如何在程序中处理完之后,再通过SQL语句比较??

to : of123()
我开始用的就是你这句,但根本字体是红色的,提示‘m’有错。所以换了我那句。

请各位帮忙啊
of123 2004-12-01
  • 打赏
  • 举报
回复
"delete from table where datediff('m',dateColumn,date())>1"
射天狼 2004-12-01
  • 打赏
  • 举报
回复
什么数据库!?不同的数据库处理日期的函数不一样的!
如果实在找不到处理的函数,可以在程序中处理完之后,再通过SQL语句比较!
sunny8226 2004-12-01
  • 打赏
  • 举报
回复
谢谢楼上帮我解决这问题。结贴
fontz 2004-12-01
  • 打赏
  • 举报
回复
呵呵。

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧