<<< 返回 access911.net 编程静态资料库索引页

关于IN子句用参数代替时,多参数该如何处理?还要按参数排序又要如何处理?

 

作者:cg1  摘自:access911.net  录入:cg1  时间:2004-8-11  浏览人次:2200


专题地址:http://access911.net/fixhtm/72FAB51E16DCE9F3.htm 如果需要更详细的评论或说明,请点击该地址。

 

简述:关于IN子句用参数代替时,多参数该如何处理?
关于IN子句用参数代替时,多参数该如何处理?还要按参数排序又要如何处理?《查询》

 


问题:

关于IN子句用参数代替时,多参数该如何处理?

如何编写删除id where in(1,2,3,4,5) 的查询 
DELETE Article.ID
FROM Article
WHERE (((Article.ID) In ([@IDs])));

IDs的值单独为一个的时候可以删除,两个以上的值就不行了

 

回答:


DELETE Article.ID
FROM Article
WHERE (((Article.ID) In ([@IDs])));

参数只允许有一个,如果你在[@IDs]里面填写 1,2,3仍然被作为一个参数,而不是3个。

如果你要达到你需要的效果,必须用 VBA 来组织 jet SQL 语句

dim strsql as string
dim strIn as string
strIn="1,2,3"
strsql="DELETE Article.ID FROM Article WHERE Article.ID In (" & strIn & ")" 
currentproject.connection.execute strsql


在 .....................
...........

资料库随时有更新,欲查看最新详情请单击专题地址http://access911.net/fixhtm/72FAB51E16DCE9F3.htm

 


上一篇:jet sql是否支持程序流分支?是否能像存储过程那样使用变量?能否多行一起执行?

下一篇:日志文件丢失下的SQLServer数据库的恢复 

2017年2月22日生成静态资料