VFP表单中如何给查询command1编写按学号查询的代码?实现查询功能

我建立了一个表单如下图

现在需要实现的就是编写查询的代码,在查询的CLICK事件中编写:
temp=MESSAGEBOX("确定输入无误吗?",4+32+256,"提示!")
IF temp=6
SELECT * from jwxx!stu where stu.学号=ALLTRIM(thisform.text1.value);
order by stu.学号 into cursor tempcursor
thisform.grid1.RecordSource=tempcursor
ENDIF
在查询的INIT事件中编写
PUBLIC tempcursor
最后运行表单时,首页直接显示全部stu表的全部数据,输入学号后点查询,表格数据就全空了,怎么实现刚开始看见的就是一张空的表,然后查询什么就显示什么,希望大神能帮我解答一下!谢谢!

1, 表单得init中无需PUBLIC tempcursor, 临时表不是变量, 你不关闭它,它就不会消失
2, 在表单的init中加入这句,可以使一打开表单,表格不显示stu数据:
thisform.grid1.recordsource=''
3,click事件代码做如下优化, 2处, 第一处是生成临时表前再次使recordsource为空,; 第二处是在字段上也加alltrim函数, 因此表里的字段后面也有空格:

temp=MESSAGEBOX("确定输入无误吗?",4+32+256,"提示!")
IF temp=6
thisform.grid1.recordsource=''
SELECT * from jwxx!stu where alltrim(stu.学号)=ALLTRIM(thisform.text1.value);
order by stu.学号 into cursor tempcursor
thisform.grid1.RecordSource='tempcursor'
ENDIF

另外, 你倒数第二行的,设置表格数据源时, 临时表要加引号!!!!!
温馨提示:答案为网友推荐,仅供参考