Kreuztabelle in Access aus VB.net heraus per SQL-Syntax erstellen

25/09/2008 - 10:12 von karin weixler | Report spam
Hallo,
ich muß per Code (in VB.net) eine Kreuztabellen-Abfrage in einer
Access-Datenbank
erstellen. Kann mir jemand damit weiterhelfen?
Ich verbinden mich mit der Access-Datenbank via OleDBConnection und möchte
die Kreuztabellen-Abfrage über ein OleDBCommand erstellen.
Habe es mit der SQL-Syntax aus Access versucht, leider erfolglos:

Dim mySQL As String
mySQL = "CREATE VIEW a_w_tmp_ReportVertrag_Kreuz AS " & _
"TRANSFORM Sum(a_w_tmp_reportVertrag_Gruppiert.ZahlGesamt) AS [Summe von
ZahlGesamt] " & _
"Select Case a_w_tmp_reportVertrag_Gruppiert.Gruppe2 " & _
"FROM(a_w_tmp_reportVertrag_Gruppiert) " & _
"GROUP BY a_w_tmp_reportVertrag_Gruppiert.Gruppe2 " & _
"PIVOT a_w_tmp_reportVertrag_Gruppiert.Gruppe1"
Dim myCmd As OleDbCommand
myCmd = New OleDbCommand(mySQL, Me.Connection, myTransaction)
Try
myCmd.ExecuteNonQuery()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Information, "Datenbank Update")
Return False
End Try

Vielen Dank schon mal.

Schöne Grüße
Karin
 

Lesen sie die antworten

#1 Karl Donaubauer
25/09/2008 - 10:35 | Warnen spam
karin weixler wrote:
ich muß per Code (in VB.net) eine Kreuztabellen-Abfrage in einer
Access-Datenbank
erstellen. Kann mir jemand damit weiterhelfen?
Ich verbinden mich mit der Access-Datenbank via OleDBConnection und möchte
die Kreuztabellen-Abfrage über ein OleDBCommand erstellen.
Habe es mit der SQL-Syntax aus Access versucht, leider erfolglos:

Dim mySQL As String
mySQL = "CREATE VIEW a_w_tmp_ReportVertrag_Kreuz AS " & _
"TRANSFORM Sum(a_w_tmp_reportVertrag_Gruppiert.ZahlGesamt) AS [Summe
von ZahlGesamt] " & _
"Select Case a_w_tmp_reportVertrag_Gruppiert.Gruppe2 " & _



Na, "Select Case" ist aber keine "SQL-Syntax aus Access".
Es sieht so aus, als wàre dir das Wort "Case" hier reingerutscht.
Falls du Access installiert hast, dann teste am besten vorher
dein Statement direkt in einer Access-Abfrage..

"FROM(a_w_tmp_reportVertrag_Gruppiert) " & _
"GROUP BY a_w_tmp_reportVertrag_Gruppiert.Gruppe2 " & _
"PIVOT a_w_tmp_reportVertrag_Gruppiert.Gruppe1"
Dim myCmd As OleDbCommand
myCmd = New OleDbCommand(mySQL, Me.Connection, myTransaction)
Try
myCmd.ExecuteNonQuery()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Information, "Datenbank Update")
Return False
End Try



HTH
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com, jetzt mit Anmeldung und Info
zur Access-Entwickler-Konferenz (AEK11), Oktober 2008, Nürnberg

Ähnliche fragen