标题:VB操作access数据库,如何实现将表名用一个变量代替
只看楼主
shinesun
Rank: 2
等 级:论坛游民
帖 子:72
专家分:10
注 册:2012-12-12
结帖率:95%
已结贴  问题点数:20 回复次数:5 
VB操作access数据库,如何实现将表名用一个变量代替
新建access数据库,有多个表格,现要对每个表格实现查询功能,如何实现将表名用一个变量代替,这样就不用对每个表格用写"select * from 年龄 where 班级='20'",想该查询功能写成一个函数,sql语句加了双引号好像就不能将from后面的写成变量了
搜索更多相关主题的帖子: sql语句 access 数据库 双引号 where 
2016-05-09 16:08
hjxlj
Rank: 10Rank: 10Rank: 10
来 自:江西
等 级:贵宾
威 望:14
帖 子:292
专家分:1519
注 册:2013-6-25
得分:10 
一样可以,如下:
程序代码:
Dim strTableName As String      '这个变量就可以用来保存表名
……
strTableName = "你的表名"         '给保存表名的变量赋值
……
"SELECT * FROM " & strTableName & " WHERE 班级='20'"
……


[此贴子已经被作者于2016-5-10 09:34编辑过]


本人QQ:775420425
2016-05-09 18:18
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:125
帖 子:1034
专家分:5519
注 册:2016-5-10
得分:10 
一般比较常用的做法是:
程序代码:
Dim strSQL As String
Dim RS As ADODB.Recordset
Dim cn As New ADODB.Connection

Private Sub Combo1_Click()
'在 Combo1 的单击事件中就可以设置数据表连接语句
Dim SJK As String
SJK = Combo1.Text
strSQL = "Select * From " & SJK & ""
strSQL = strSQL & " Where ............"  '这里需要你自己添加查询条件,数据表不同,结构不同,语句也不同
'一般的做法是与 Combo1 同步,检测数据表的字段,根据字段的数据类型,设置查询条件。
End Sub

Private Sub Form_Load()
  cn.Open "driver={SQL Server};server=计算机名称;uid=sa;pwd=;database=数据库名称"
  '这是SQL数据库连接语句,你可以修改为你的数据库连接语句
  Combo1.Clear
  Set RS = cn.OpenSchema(adSchemaTables)
  Do Until RS.EOF
     If Left(RS!TABLE_NAME, 3) <> "sys" And Left(RS!TABLE_NAME, 3) <> "dtp" Then
        Combo1.AddItem RS!TABLE_NAME    '将你连接的这个数据库中的所有数据表读入 Combo1 控件中了
     End If
     RS.MoveNext
  Loop
  RS.Close
End Sub

如果你还想进一步了解,联系我:qq 2653043392

请不要选我!!!
2016-05-10 09:46
shinesun
Rank: 2
等 级:论坛游民
帖 子:72
专家分:10
注 册:2012-12-12
得分:0 
谢谢两位,我先试试看看能不能解决!
2016-05-10 14:34
hjxlj
Rank: 10Rank: 10Rank: 10
来 自:江西
等 级:贵宾
威 望:14
帖 子:292
专家分:1519
注 册:2013-6-25
得分:0 
回复 4楼 shinesun
如果解决,请及时结帖。

本人QQ:775420425
2016-05-10 16:12
shinesun
Rank: 2
等 级:论坛游民
帖 子:72
专家分:10
注 册:2012-12-12
得分:0 
问题解决啦!谢谢各位
2016-05-11 14:58



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-464567-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.318529 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved