请教查询问题
strDataSource =
"select * from student where 姓名 = 'Form2.txtName.Text' "
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
为什么从form2中的txtName.Text值传不过来呢,
是不是不能这么用??
问题点数:20、回复次数:4Top
1 楼changechange(http://access911.net 是我的个人网站,欢迎光临)回复于 2006-03-04 10:22:27 得分 20
关于此主题请参考:
新手来看:关于 JET SQL 在 ACCESS 中不同位置的不同用法《查询》
http://access911.net/index.asp?u1=a&u2=72FAB01E17DCEFF3
不要只看标题,请认真仔细地察看上述文章以及相关的评论。另外 http://access911.net 上整理了大量有关 Access 的原创资料,请有空的时候多用文章搜索功能
如果您有兴趣加入ACCESS编程的专项研究可以来QQ群“ACCESS上海研究班”看看,加入的方法请看这里《个性化的access911.net(七)QQ 群加入规则(专门讨论 ACCESS 的 )》http://access911.net/?kbid;72FAB01E16DCECF3Top
2 楼changechange(http://access911.net 是我的个人网站,欢迎光临)回复于 2006-03-04 10:23:10 得分 0
错误例子3:
strSQL = "update tableA set fieldA=[forms]![窗体名]![窗体上的控件名] where fieldB='条件'"
上述代码错误,虽然用这句SQL语句: update tableA set fieldA=[forms]![窗体名]![窗体上的控件名] where fieldB='条件'
创建一个查询是完全正确的,但是 [forms]![窗体名]![窗体上的控件名]
作为一个对象,能够被 ACCESS 所识别,但是却不能被 JET DB 识别。因此,应该将代码更改为:
strSQL = "update tableA set fieldA='" & forms("窗体名").窗体上的控件名.value & "' where fieldB='条件'"
实际操作中,如果将错误例子3的SQL保存为一个查询时,其实是ACCESS完成了将 update tableA set fieldA=[forms]![窗体名]![窗体上的控件名]
转换为 update tableA set fieldA='该窗体上控件的值' where fieldB='条件'
的工作,然后再将上述字符串提交给 JET DB 去执行的。Top
3 楼changechange(http://access911.net 是我的个人网站,欢迎光临)回复于 2006-03-04 10:23:36 得分 0
strDataSource =
"select * from student where 姓名 = '" & Form2.txtName.value & "' "Top
4 楼htting(爱琴海中的一滴泪)回复于 2006-03-04 10:25:05 得分 0
谢谢,我一定仔细研究Top




