Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-查询/SQL语句

[access查询]管理access的查询语句

时 间:2007-12-01 23:23:08
作 者:victorduane   ID:70  城市:闵行
摘 要:导入ACCESS的查询语句到一个表中,
这对管理查询来说是相当方便的,你要做的就是复制这些代码,然后运行testCreatequerysql()
这个过程就行了,不过得保证你的ACCESS中有查询,嘿嘿。。。。
正 文:

导入ACCESS的查询语句到一个表中

直接运行 testCreatequerysql()这个过程就可以把你数据库中的查询导入到一个tblquerysql

这个表是过程建立的,如果过程已经建立了不会覆盖原来的表

Sub testCreatequerysql()
CDtable
CreateQuerySQL "tblquerysql"
End Sub

把查询的语句写入到一个表中的过程

Sub CreateQuerySQL(strTable As String)
On Error GoTo Err_Handler
Dim Rs As DAO.Recordset
Dim qy As DAO.QueryDef
Dim i As Integer
Set Rs = CurrentDb.OpenRecordset(strTable)

For Each qy In CurrentDb.QueryDefs
If qy.Name Like "[!~]*" Then
Debug.Print qy.Name
Rs.AddNew
Rs(1) = qy.Name
Rs(2) = qy.SQL
Rs.Update
qy.Close
End If
qy.Close
Next
Set qy = Nothing
Set Rs = Nothing
Err_Handler:
If Err.Number <> 0 Then MsgBox Err.Number & vbCrLf & Err.Description
End Sub

新建一个表tblquerysql可以存放查询语句

Public Sub CDtable()
On Error GoTo error1
Dim db1 As Database
Dim t1 As TableDef
Dim f1 As Field
    Set db1 = Workspaces(0).Databases(0)
    Set t1 = db1.CreateTableDef("tblQuerySql")
   
    With t1
        Set f1 = .CreateField("ID", dbLong)
        f1.Attributes = dbAutoIncrField + dbFixedField
        Debug.Print f1.Attributes

        t1.Fields.Append f1
       
        Set f1 = .CreateField("QueryName", dbText, 50)
'            f1.Required = True
'            f1.AllowZeroLength = False
'            f1.ValidationRule = "is not null"
'            f1.ValidationText = "不允许为空"

        t1.Fields.Append f1
       
        Set f1 = .CreateField("SqlValue", dbMemo)
        t1.Fields.Append f1

        Set f1 = .CreateField("operTime", dbDate)
        f1.DefaultValue = "=Now()"
        t1.Fields.Append f1
    End With
   
    db1.TableDefs.Append t1
    db1.Close
    Exit Sub
error1:
    If Err.Number = 3010 Then
        Exit Sub
    Else
        MsgBox Err.Number & Err.Description
        Exit Sub
    End If
End Sub



Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助