从你写的这些代码,可见犯了程序编码最坏的毛病,即力图用一行写完全部的功能,那是一种很古老的坏习惯,早已被实践证明是最糟糕的代码书写方式,我不知道你哪学来的这种东西。
那条SQL SELECT查询,按标准格式写就是了,WHERE 出生地=右边的部分,是一个字符串,你就应该按格式给出字符串,而不是这样嵌套写。
创建一个变量
Condition = ()
先MESSAGEBOX(Condition)看看是不是所需要的东西,如果正确,就写
sele * from 歌手表 where 歌手出生地="&Condition" into table A
把Condition的值换成下面那种,看看两种分别是什么吧。这就叫调测程序,代码也应该这样写,两行都清晰,容易跟踪,容易修改。不要以为全挤在一行运行会快点,不会的,反而更慢(解释器解释语法复杂的语句要花费更多的时间,在你这里SELECT过程中的每个循环动作都要拜访Text1对象取值、运算,但那其实是常数,像我现在赋值就是在循环语句中确立常数,不用多余的反复动作,才能真正的快),不要想当然。
[
本帖最后由 TonyDeng 于 2011-9-1 19:43 编辑 ]