Werte Leute des VB-Paradise Forums,
ich hab Probleme mit einer SQL Abfrage in Verbingung mit dem Readerobjekt. Mein Sytax ist wie folgt (alles Notwendige wurde mit Import eingebunden):
Der Inhalt der Spalte Betrag un der Spalte Status in der Tabelle personen ist wie folgt:
Betrag Status
365 bezahlt
2000 unbezahlt
500 unbezahlt
50 unbezahlt
50 unbezahlt
Somit müsste wert_bezahlt =365 ; wert =2965 ; wert_offen=2600 sein
Ausgabe ist aber: wert=2965 ; wert_bezahlt=2965 wert_offen=365 !!
Weiß jemand Rat? Es muss irgendwie am SQL-Aufruf liegen...
Vielen Dank im Voraus!
Gruß
Timo
ich hab Probleme mit einer SQL Abfrage in Verbingung mit dem Readerobjekt. Mein Sytax ist wie folgt (alles Notwendige wurde mit Import eingebunden):
VB.NET-Quellcode
- [....]
- Dim MON As String
- Dim monat As String
- Dim con As New OleDbConnection
- Dim cmd As New OleDbCommand
- Dim reader As OleDbDataReader
- Dim wert, wert_bezahlt, wert_offen As Double
- con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=C:\Temp\firma.accdb"
- cmd.Connection = con
- cmd.CommandText = "SELECT Sum([betrag]) as betrag from personen"
- Try
- con.Open()
- reader = cmd.ExecuteReader()
- Do While reader.Read()
- wert = reader("betrag")
- Loop
- reader.Close()
- reader = cmd.ExecuteReader()
- cmd.CommandText = "SELECT SUM([betrag]) as betrag FROM personen WHERE status = 'bezahlt'"
- Do While reader.Read()
- wert_bezahlt = reader("betrag")
- Loop
- reader.Close()
- reader = cmd.ExecuteReader()
- cmd.CommandText = "SELECT SUM([betrag]) AS betrag FROM personen WHERE status = 'unbezahlt'"
- Do While reader.Read()
- wert_offen = reader("betrag")
- Loop
- reader.Close()
- con.Close()
- Catch ex As Exception
- MessageBox.Show(ex.Message)
- End Try
- MON = ComboBox1.SelectedItem
- Select Case MON
- Case "jan"
- monat = "Januar"
- Case "feb"
- monat = "Februar"
- Case "mar"
- monat = "März"
- Case "apr"
- monat = "April"
- Case "mai"
- monat = "Mai"
- Case "jun"
- monat = "Juni"
- Case "jul"
- monat = "Juli"
- Case "aug"
- monat = "August"
- Case "sep"
- monat = "September"
- Case "okt"
- monat = "Oktober"
- Case "nov"
- monat = "November"
- Case "dez"
- monat = "Dezember"
- End Select
- Chart1.Series.Clear()
- Chart1.Series.Add(monat)
- Chart1.Series.Add("bezahlt")
- Chart1.Series.Add("offen")
- Chart1.Series(monat).ChartType = DataVisualization.Charting.SeriesChartType.Column
- Chart1.Series("bezahlt").ChartType = DataVisualization.Charting.SeriesChartType.Column
- Chart1.Series("offen").ChartType = DataVisualization.Charting.SeriesChartType.Column
- 'Werte
- Chart1.Series(monat).Points.AddY(wert)
- Chart1.Series("bezahlt").Points.AddY(wert_bezahlt)
- Chart1.Series("offen").Points.AddY(wert_offen)
- Chart1.Series(monat).IsValueShownAsLabel = True
- Chart1.Series("bezahlt").IsValueShownAsLabel = True
- Chart1.Series("offen").IsValueShownAsLabel = True
- End Sub
Der Inhalt der Spalte Betrag un der Spalte Status in der Tabelle personen ist wie folgt:
Betrag Status
365 bezahlt
2000 unbezahlt
500 unbezahlt
50 unbezahlt
50 unbezahlt
Somit müsste wert_bezahlt =365 ; wert =2965 ; wert_offen=2600 sein
Ausgabe ist aber: wert=2965 ; wert_bezahlt=2965 wert_offen=365 !!
Weiß jemand Rat? Es muss irgendwie am SQL-Aufruf liegen...
Vielen Dank im Voraus!
Gruß
Timo