那么你可以先判断一下,是不是空,如果为空,就不要加到sql字符串中去了,这样就没你所说的问题了,不知道楼主明白我的意思没,因为
如果
cha2为空字符串,那么
chacha=cha1+"and"+cha2+"and"+cha3+"and+"cha4
就等于:
chacha=cha1+"and and"+cha3+"and+"cha4
你说这样有问题吗?但是如果你在加cha2的时候就先判断一下是不是为空的话,
if trim(cha1) <>"" then
chahca=cha1
elseif trim(cha2)<>"" then
chacha=chacha & " and " & cha2
elseif trim(cha3)<>"" then
chacha=chacha & " and " & cha3
elseif trim(cha4) <>"" then
chacha=chacha & " and " & cha4
end if
如果
cha2为空字符串,那么
chacha=cha1+"and"+cha2+"and"+cha3+"and+"cha4
就等于:
chacha=cha1+"and and"+cha3+"and+"cha4
你说这样有问题吗?但是如果你在加cha2的时候就先判断一下是不是为空的话,
if trim(cha1) <>"" then
chahca=cha1
elseif trim(cha2)<>"" then
chacha=chacha & " and " & cha2
elseif trim(cha3)<>"" then
chacha=chacha & " and " & cha3
elseif trim(cha4) <>"" then
chacha=chacha & " and " & cha4
end if
while instr(1,chacha,"and and")>0
chacha=replace(chacha,"and and","and")
wend
executesql("select * from table1 where "+ chacha)
注意可能出现“and and and and ”的情况。
str=str & " and 1=2"
str=str & " and 1=2"
str=str & " and 1=2"
str=str & " and 1=2"几个都没问题