📄 analysismain.bas
字号:
Attribute VB_Name = "Main"
Option Explicit
Public conndb As ADOCE.Connection
Public rsTables As ADOCE.Recordset 'Recordset reads MSysTables
Public rsRecords As ADOCE.Recordset 'Recordset reads MSysFields
Public rsWorkingTbl As ADOCE.Recordset 'Recordset used to view data
Public sSelect As String
Public sFields As String
Public sTable As String
Public sTableNo As String
Public iRecCnt As Integer
Public sSQL As String
Public sList As String
Public Sub Main()
'Start Program
Form1.Show
End Sub
Private Sub LoadDB(dbFileName As String)
'Open the Database
Dim rsRecs As ADOCE.Recordset
Set conndb = CreateObject("ADOCE.Connection.3.0")
conndb.ConnectionString = "data source = " & dbFileName
conndb.Open
End Sub
Public Sub GetRecsFlds()
'Get the Fields Names from the MSysFields Table
'Store the Names and Type in the rsRecords Recordset
Dim sSQLRecs As String
Set rsRecords = CreateObject("ADOCE.Recordset.3.0")
sSQLRecs = "SELECT " & _
"MsysFields.TableID, " & _
"MSysFields.FieldName, " & _
"MSysFields.Len, " & _
"MSysFields.ODBCType " & _
"FROM MsysFields WHERE " & _
"TableID = '" & sTableNo & "'"
rsRecords.Open sSQLRecs, conndb
End Sub
Public Sub OpenTable()
'Open Table to View
'Store information in rsWorkingTbl RecordSet
Dim sFind As String
Dim sSlctOpen As String
Set rsWorkingTbl = CreateObject("ADOCE.Recordset.3.0")
'Test to see if the txtBox starts with SELECT if does not
'then read the table code from MsysTables, which you can
'then use to identify the field names from MSysFields
'Else if SELECT is used then go to Else statment and
'run the SQL statment as typed
If Mid(sSQL, 1, 6) <> "SELECT" Then
sSelect = sList
sTable = sSelect
Set rsTables = CreateObject("ADOCE.Recordset.3.0")
sSlctOpen = "SELECT TableName, TableID FROM MSysTables WHERE TableName = '" & sTable & "'"
rsTables.Open sSlctOpen, conndb, adOpenKeyset, adLockOptimistic
rsTables.MoveFirst
sTableNo = rsTables.Fields("TableID")
rsTables.Close
Set rsTables = Nothing
Else
sSelect = sSQL
End If
rsWorkingTbl.Open sSelect, conndb, adOpenKeyset, adLockOptimistic
rsWorkingTbl.MoveLast
iRecCnt = rsWorkingTbl.RecordCount
rsWorkingTbl.MoveFirst
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -