Hallo allerseits,
ich verstehe derzeit die Welt nicht mehr.
In einem Projekt (mySQL 5, myODBC ist installiert) habe ich folgende Testfunktion.
Verwende ich den oberen SQL-Query liefert mySQL Daten zurück.
Verwende ich den, zugegeben noch nicht sehr schönen, zweiten SQL-Query liefert mir mySQL keine Daten.
Führe ich die Queries im phpmyAdmin auf der gleichen DB aus, so liefert er mir in _beiden_ Fällen ein Ergebniss zurück. Kann mir jemand dieses Verhalten erklären?
Dim sConn As String
Dim oConn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sSQL As String
'Connection-String zusammenstellen
sConn = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & Form1.sServer & ";
PORT=" & Form1.iPort & ";DATABASE=" & Form1.sDatabase & ";
USER=" & Form1.sUserName & ";PASSWORD=" & Form1.sPassWord & ";"
'sSQL = "SELECT tbl_orte.id,tbl_kreise.nummer FROM tbl_orte, tbl_kreise WHERE
tbl_orte.kreis=tbl_kreise.nummer"
sSQL = "SELECT hs, gj, ortkennziffer_statistisch, count(tbl_import_sta.id) as" & _
"tafeln,
count(distinct(standortnummer)) as standorte, ew, tbl_orte.name AS ort,
tbl_nielsen.name AS nielsen, AVG(preis)/100 AS durchschnitt,
tbl_bundeslaender.name AS bland, plz, block, tbl_kreise.nummer AS kreisnummer
FROM tbl_import_sta, tbl_orte, tbl_kreise, tbl_bundeslaender, tbl_nielsen WHERE
status_aktuell='A' AND (hs='GF' OR hs='GZ') AND
tbl_orte.nr=tbl_import_sta.ortkennziffer_statistisch AND
tbl_orte.kreis=tbl_kreise.nummer AND
tbl_kreise.id_bundesland=tbl_bundeslaender.id_statistisch AND
tbl_bundeslaender.id_nielsen=tbl_nielsen.id_nielsen AND tbl_import_sta.gj=2007
GROUP BY ortkennziffer_statistisch, hs, gj, ew, tbl_orte.name, _
tbl_nielsen.name,
tbl_bundeslaender.name"
With oConn
.ConnectionString = sConn
.Open
Set rs = oConn.Execute(sSQL)
If rs.BOF = False And rs.EOF = False Then
rs.MoveFirst
MsgBox "Ergbebniss vorhanden"
Else
MsgBox rs.RecordCount
MsgBox "kein Ergebniss"
End If
Set rs = Nothing
End With
oConn.Close Ratlos Poscht |