• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    读取Access数据库的vbscript代码打包下载
    效果如图所示:

    核心代码:
    复制代码 代码如下:

    Option Explicit
    Dim arrTables( ), i, idxTables, intValidArgs
    Dim blnContent, blnFieldNames
    Dim objConn, objFSO, objRS, objSchema
    Dim strConnect, strHeader, strOutput
    Dim strFile, strResult, strSQL, strTable
    Const adSchemaTables = 20
    ' Check command line arguments
    With WScript.Arguments
    If .Unnamed.Count = 1 Then
    strFile = .Unnamed(0)
    Else
    Syntax
    End If
    blnFieldNames = True
    blnContent = True
    If .Named.Count > 0 Then
    intValidArgs = 0
    If .Named.Exists( "T" ) Then
    blnFieldNames = False
    blnContent = False
    intValidArgs = intValidArgs + 1
    End If
    If .Named.Exists( "TF" ) Then
    blnContent = False
    intValidArgs = intValidArgs + 1
    End If
    If intValidArgs > .Named.Count Then Syntax
    End If
    End With
    ' Check if the specified database file exists
    Set objFSO = CreateObject( "Scripting.FileSystemObject" )
    If Not objFSO.FileExists( strFile ) Then Syntax
    Set objFSO = Nothing
    ' Connect to the MS-Access database
    Set objConn = CreateObject( "ADODB.Connection" )
    strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" strFile
    objConn.Open strConnect
    ' Search for user tables and list them in an array
    Set objSchema = objConn.OpenSchema( adSchemaTables )
    idxTables = -1
    Do While Not objSchema.EOF
    If objSchema.Fields.Item(3).Value = "TABLE" Then
    idxTables = idxTables + 1
    ReDim Preserve arrTables( idxTables )
    arrTables( idxTables ) = objSchema.Fields.Item(2).Value
    End If
    objSchema.MoveNext
    Loop
    ' List all tables, their column names and their contents
    For Each strTable In arrTables
    strSQL = "Select * From " strTable
    Set objRS = objConn.Execute( strSQL )
    If IsObject( objRS ) Then
    ' Display the current table's name
    If blnContent Then
    WScript.Echo """Table: " strTable """"
    Else
    WScript.Echo """" strTable """"
    End If
    If blnFieldNames Then
    strOutput = ""
    Do While Not objRS.EOF
    ' Create a header line with the column names and data types
    strHeader = ""
    For i = 0 To objRS.Fields.Count - 1
    strHeader = strHeader ",""[" _
    GetDataTypeDesc( objRS.Fields.Item(i).Type ) "] " _
    objRS.Fields.Item(i).Name """"
    Next
    strHeader = Mid( strHeader, 2 )
    If blnContent Then
    ' List the fields of the current record in comma delimited format
    strResult = ""
    For i = 0 To objRS.Fields.Count - 1
    strResult = strResult ",""" objRS.Fields.Item(i).Value """"
    Next
    ' Add the current record to the output string
    strOutput = strOutput Mid( strResult, 2 ) vbCrLf
    End If
    ' Next record
    objRS.MoveNext
    Loop
    ' List the results for the current table
    WScript.Echo strHeader vbCrLf strOutput vbCrLf
    End If
    End If
    Next
    objRS.Close
    objSchema.Close
    objConn.Close
    Set objRS = Nothing
    Set objSchema = Nothing
    Set objConn = Nothing
    Function GetDataTypeDesc( myTypeNum )
    Dim arrTypes( 8192 ), i
    For i = 0 To UBound( arrTypes )
    arrTypes( i ) = "????"
    Next
    arrTypes(0) = "Empty"
    arrTypes(2) = "SmallInt"
    arrTypes(3) = "Integer"
    arrTypes(4) = "Single"
    arrTypes(5) = "Double"
    arrTypes(6) = "Currency"
    arrTypes(7) = "Date"
    arrTypes(8) = "BSTR"
    arrTypes(9) = "IDispatch"
    arrTypes(10) = "Error"
    arrTypes(11) = "Boolean"
    arrTypes(12) = "Variant"
    arrTypes(13) = "IUnknown"
    arrTypes(14) = "Decimal"
    arrTypes(16) = "TinyInt"
    arrTypes(17) = "UnsignedTinyInt"
    arrTypes(18) = "UnsignedSmallInt"
    arrTypes(19) = "UnsignedInt"
    arrTypes(20) = "BigInt"
    arrTypes(21) = "UnsignedBigInt"
    arrTypes(64) = "FileTime"
    arrTypes(72) = "GUID"
    arrTypes(128) = "Binary"
    arrTypes(129) = "Char"
    arrTypes(130) = "WChar"
    arrTypes(131) = "Numeric"
    arrTypes(132) = "UserDefined"
    arrTypes(133) = "DBDate"
    arrTypes(134) = "DBTime"
    arrTypes(135) = "DBTimeStamp"
    arrTypes(136) = "Chapter"
    arrTypes(138) = "PropVariant"
    arrTypes(139) = "VarNumeric"
    arrTypes(200) = "VarChar"
    arrTypes(201) = "LongVarChar"
    arrTypes(202) = "VarWChar"
    arrTypes(203) = "LongVarWChar"
    arrTypes(204) = "VarBinary"
    arrTypes(205) = "LongVarBinary"
    arrTypes(8192) = "Array"
    GetDataTypeDesc = arrTypes( myTypeNum )
    End Function
    Sub Syntax
    Dim strMsg
    strMsg = strMsg vbCrLf _
    "AccessRd.vbs, Version 1.01" vbCrLf _
    "Display MS Access database (user) tables and, optionally, their contents" _
    vbCrLf vbCrLf _
    "Usage: CSCRIPT //NOLOGO ACCESSRD.VBS access_db_file [ /T | /TF ]" _
    vbCrLf vbCrLf _
    "Where: ""access_db_file"" is an MS-Access database file" vbCrLf _
    " /T list table names only" vbCrLf _
    " /TF list table and field names only" vbCrLf _
    " (default is list tables, field names AND contents)" _
    vbCrLf vbCrLf _
    "Written by Rob van der Woude" vbCrLf _
    "http://www.robvanderwoude.com"
    WScript.Echo strMsg
    WScript.Quit(1)
    End Sub

    使用方法:
    AccessRd.vbs, Version 1.01Display MS Access database (user) tables and, optionally, their contents
    Usage: CSCRIPT //NOLOGO ACCESSRD.VBS access_db_file [ /T | /TF ]Where: "access_db_file" is an MS-Access database file
    /T list table names only
    /TF list table and field names only
    (default is list tables, field names AND contents)Written by Rob van der Woudehttp://www.robvanderwoude.com

    测试代码打包下载
    您可能感兴趣的文章:
    • VBS教程:属性-DateLastAccessed 属性
    • ACCESS的参数化查询,附VBSCRIPT(ASP)和C#(ASP.NET)函数
    • vbs生成ACCESS数据里所有表的字段
    • UserAccessList 集合的功能(VBA)
    • excel2access vbs脚本
    • VB6实现连接Access数据库的ADODB代码实现方法
    • VB使用ADO操作Access数据库
    上一篇:运行bat时隐藏cmd窗口的方法(bat隐藏窗口 隐藏运行bat文件)
    下一篇:网络接口利用率监控VBS脚本代码(Windows)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    读取Access数据库的vbscript代码打包下载 读取,Access,数据库,的,vbscript,