asp操作符丢失,请高手帮忙

来源:百度知道 编辑:UC知道 时间:2024/07/05 20:44:40
sql="select * from bOrderList where id in ("&Delid&")"
这句是否存在语法错误?

Microsoft JET Database Engine (0x80040E14)
语法错误 (操作符丢失) 在查询表达式 'id in ("&rs("ID")&")' 中。
delid=request("id")

这样肯定是错误的,IN在SQL中是一个谓词,它的后面是一个集合而不是一个单值,你求出的显然是单值,所以如果是单词时可以直接用等号就可以了,没有必要用in的.in最常见的使用是出现在子查询之前.如:

select * from table1 where id in (select id from table2)

子查询是一个集合的,哪怕是没有任何结果或是只有一个结果都是集合,不是一个值的问题,所以这里用谓词in显然是一合适的!也就是说:

select * from table1 where id in (id)这样显然是错误的!

不是这个问题,而是在Delid的赋值应该出现了问题,否则不会出现'id in ("&rs("ID")&")' 的问题,我估计你的赋值语句是不是
Delid="rs("id")"
至于IN的问题,单个数组并不是问题,楼主可以把前面的代码发来看看!

sql="select * from bOrderList where id ="&delid&""

为什么不这样更简单呢.