| 网站首页 | 新闻 | 新书 | 专家 | 技巧 | 源码作品 | 工具/资源 | 商城 | 风采 | 留言 | 论坛 | 网址 | 承接 | 
您现在的位置: Access/Office中国 >> 技巧 >> Access >> 查询视图 >> 文章正文 用户登录 新用户注册
表名或者字段名是变量的参数查询         ★★★
表名或者字段名是变量的参数查询
作者:cg1 文章来源:Access911 点击数: 本日:{$DayHits} 更新时间:2005-2-4 18:50:46

原文:http://access911.net/72FAB31E11DCEDF3.htm

问题:

 如何写表名是变量的参数查询?
表名是变量的查询怎么写?比如:SELECT * FROM [@kk]


我要将表名作为一个参数输入,随客户输入的不同查询不同的表。
如何写字段名是变量的参数查询?比如:SELECT * FROM tablename WHERE [input fieldname]='545'


 回答:

上述写法是错误的!
同 SQL SERVER 的 T-SQL 语句一样,“表名”或者“字段名”是不允许用变量代替。
你必须用 VBA 来控制 SQL 字串的组合

dim strsql as string
dim strTableName as string
strTableName="abc"
strsql="select * from " & strTableName
'后面就看你随便写了,你可以用 RECORDSET 打开,也可以用 create view 语句建立一个查询
'用 recordset 打开的代码如下:
dim rs as new adodb.recordset
rs.open strsql,currentproject.connection,1,1
....

'也可以用 CREATE VIEW 语句来创建一个新的查询,并打开
on error resume next
currentproject.connection.execute "drop view 查询名称"
currentproject.connection.execute "create view 查询名称 as " & strsql
docmd.openquery "查询名称"
 

顺便提一下, SQL SERVER 应该如下操作
declare @sql varchar(200)
set @sql='select * from ' + @table_name
execute(@sql)

文章录入:admin    责任编辑:tmtony 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    专 题 栏 目
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    如何使用ADO或DAO获取字
    如何得到表的所有键、键
    用ADO列出某个表的所有字
    如何用代码设置表中字段
    如何设置表的字段默认值
    如何更改表的某一个字段
    最简单的办法判断表最多
    把EXE文件存入到表的字段
    返回存储过程OUTPUT参复
    一句代码得到表中的某行
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)