-
Notifications
You must be signed in to change notification settings - Fork 0
/
Module2.bas
174 lines (134 loc) · 4.13 KB
/
Module2.bas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
Attribute VB_Name = "MySQLdb"
Option Explicit
' Fehlerausgabe bei Verbindungsfehler
Private Function MySQL_Error() As Boolean
With oConn.Error
If .Number = 0 Then Exit Function
MsgBox "Error " & .Number & ": " & .Description
MySQL_Error = True
End
End With
End Function
Public Sub dbRowAdd()
' Datensatz hinzufügen
Dim nResult As Long
Dim sVorname, sNachname As String 'Vorsicht hat sich geaendert !
Dim sTestTyp, sProblem, sMaschine, sResult, sDescription, sTestnumber As String
i = 0
'If Not oConn Is Nothing Then oConn.CloseConnection
If MySQL_Error() = False Then
'Set oConn = Nothing
' Datensatz in Tabelle einfügen
For i = 0 To rowcnt0 - 1
'DoEvents
oConn.Execute "INSERT INTO " & sTable & " (" & FileNames(3, 0) & ") " & _
"VALUES " & FileNames1(i)
Next
End If
End Sub
Public Sub dbCreateTable()
Dim sSQL, bSQL As String
' Tabelle erstellen
sSQL = "CREATE TABLE IF NOT EXISTS " & sTable & " (`idx` BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE = MYISAM ;"
oConn.Execute sSQL
For i = 0 To gcntcols
bSQL = "ALTER TABLE " & sTable & " ADD " & CreatTableCols(i) '& " VARCHAR( 20 ) NULL DEFAULT '0';"
oConn.Execute bSQL
Next
If MySQL_Error() = False Then
If MESAG = "YES" Then
MsgBox "Tabelle " & sTable & " wurde erstellt."
End If
End If
End Sub
Public Sub dbDisconnect()
' Verbindung beenden
If Not oConn Is Nothing Then oConn.CloseConnection
If MySQL_Error() = False Then
Set oConn = Nothing
End If
End Sub
' Tabelle löschen
Public Sub dbDropTable()
Dim sSQL As String
If MsgBox("Tabelle wirklich löschen?", vbYesNo, "Löschen") = vbYes Then
' Tabelle löschen
sSQL = "DROP TABLE IF EXISTS " & sTable
oConn.Execute sSQL
If MySQL_Error() = False Then
End If
End If
End Sub
Public Sub dbQueryTable()
' RS-Objekt vom Connection-Objekt ableiten und
' Status anzeigen.
'
' Nicht wie bei ADO. Bei der MyVbQl.Dll wird das
' Recordset direkt von der Connection abgeleitet.
Dim sSQL As String
Dim bError As Boolean
' Alle Datensätze selektieren
sSQL = "SELECT * FROM " & sTable
Set oRs = oConn.Execute(sSQL)
bError = MySQL_Error()
' Recordset schließen
If Not oRs Is Nothing Then oRs.CloseRecordset
Set oRs = Nothing
End Sub
Public Sub dbConnect()
' Wir öffnen die Verbindung zum MySQL Server
' Statt 'Localhost' kann auch die IP verwendet werden. Diese
' erfahren Sie im WinMySQLAdmin im Register'Environment',
' wenn Sie auf 'Extendet Server Status' klicken.
oConn.OpenConnection sServer, _
sUsername, sPassword, sDBName
' Statusabfrage
If (oConn.State = MY_CONN_CLOSED) Then
' Falls Verbindung nicht geöffnet, Fehlerangabe!
MySQL_Error
Else
' Bei erfolgreicher Verbindung, Verbindungsdaten ausgeben
'MsgBox "Connected to Database: " & oConn.dbName, _
vbInformation, "MySQL-Dyno-Results-Database"
' Prüfen, ob Tabelle existiert
'Set oRs = oConn.Execute("SELECT * FROM " & sTable)
Set oRs = oConn.Execute("SELECT * FROM " & sTable)
' Recordset sschließen
If Not oRs Is Nothing Then oRs.CloseRecordset
Set oRs = Nothing
End If
End Sub
Public Sub CheckTablesNames()
'SHOW TABLES
Dim sSQL As String
Dim i As Integer
oConn.CloseConnection
dbConnect
sSQL = "SHOW TABLES"
Set oRs = oConn.Execute(sSQL)
If Not oRs Is Nothing Then
oRs.MoveFirst
Do While Not oRs.EOF And TBLCreate <> 1
If sTable = "`" & oRs.Fields(0).Value & "`" Then
TBLCreate = 1
Exit Do
End If
oRs.MoveNext
Loop
If TBLCreate = 0 Then
dbCreateTable
dbQueryTable
TBLCreate = 1
End If
If Not oRs Is Nothing Then oRs.CloseRecordset
Set oRs = Nothing
If Not oConn Is Nothing Then oConn.CloseConnection
End If
End Sub
' Standard-Browser starten und WWW-Seite aufrufen
Public Sub URLGoTo(ByVal hWnd As Long, ByVal URL As String)
Screen.MousePointer = 11
If Left$(URL, 7) <> "http://" Then URL = "http://" & URL
Call ShellExecute(hWnd, "Open", URL, "", "", 3)
Screen.MousePointer = 0
End Sub