DataTable Command bei MySQL DataGrid ändern?

timee

Mitglied
Hallo ihr Spezialisten,

ich habe über den MySQL DataGrid ein DataSet erstellt, welches mir aus zwei Tabellen mittels JOIN die Daten ausliest.
Code:
SELECT     verkauf.id, verkauf.name AS Verkaeufer, verkauf.zeitpunkt AS Verkaufszeitpunkt, waren.artikelname AS Artikelname, waren.vk AS `Preis in Euro`
FROM         verkauf INNER JOIN
                      waren ON verkauf.artikelnr = waren.artikelnr

Nun habe ich aber das Problem, dass alle Daten ausgelesen werden.
Ich möchte jedoch nur die Daten haben, welche in der Spalte `zeitpunkt` mit dem heutigen Tag übereinstimmen (... WHERE zeitpunkt like "Tag,Monat.Jahr"..)!
Diese Paramater lese ich in Form_Load mittels NOW in drei Variablen ein.
Kann ich das SQL Commande nun im Skript per Hand ändern, oder ist dies laut DataTable festgelegt?
Wenn ja würde ich mich über ein Beispiel freuen.

Code:
Private Sub Tagesbeleg_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim Tag As String = Format(Now, "dd")
        Dim Monat As String = Format(Now, "MM")
        Dim Jahr As String = Format(Now, "yyyy")
        Label1.Text = "Tagesbeleg vom: " & Tag & "." & Monat & "." & Jahr

        'SQL Command für heutigen Tag ändern
        ............
        'TODO: Diese Codezeile lädt Daten in die Tabelle "ShopiDataSet.DataTable1". Sie können sie bei Bedarf verschieben oder entfernen.
        Me.DataTable1TableAdapter.Fill(Me.ShopiDataSet.DataTable1)

    End Sub


THX
Timee


edit:

das ganze sollte dan so aussehen, nur soll das datum nicht fest drin stehen, sondern variable das aktuelle datuim nehmen:
Code:
SELECT     verkauf.id, verkauf.name AS Verkaeufer, verkauf.zeitpunkt AS Verkaufszeitpunkt, waren.artikelname AS Artikelname, waren.vk AS `Preis in Euro`
FROM         verkauf INNER JOIN
                      waren ON verkauf.artikelnr = waren.artikelnr
WHERE     (verkauf.zeitpunkt LIKE '26-02-2009%')
 
Zuletzt bearbeitet:
ListView funktioniert ohne Datumseingrenzung.
Nun will ich ja aber nur die Anzeigen des heutigen Tages haben!

Ich erstelle mir mit:
Code:
Dim Tag As String = Format(Now, "dd-MM-yyyy")
das aktuelle Datum als String und will es nun mittels MySQL Anweisung
Code:
WHERE v.zeitpunkt like "28-02-2009%"
in den CommandText einbinden!

Doch wie escape ich das Prozentzeichen(%), so das es laut SQL noch in der Klammer von like steht?

Wenn ich es so wie unten mache, wird zwar der Tag richtig eingefügt, doch das Prozentzeichen verursacht einen Fehler, da es ja ausserhalb der like Hochkommas steht.
Code:
cmd.CommandText = "SELECT v.id, v.name, v.zeitpunkt, w.artikelname, w.vk FROM verkauf as v, waren as w WHERE v.zeitpunkt like '" & Tag & "'% AND v.artikelnr = w.artikelnr;"


big THX
Timee
 
Oh man, ich dreh durch!

Versuch jetzt schon den ganzen Abend diese ListView mit MySQL hinzubekommen, dann entscheide ich mich nach scheinbar aussichts loser Lage hier zu posten.
Hole mir was zu trinken und denke, komm versuch es nochmal und siehe da es funktioniert.

Code:
...WHERE v.zeitpunkt like '" & Tag & "%' AND v.artikelnr = w.artikelnr;"
 

Neue Beiträge

Zurück