Announcement

Collapse
No announcement yet.

Kombinierter Abfrage

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Kombinierter Abfrage

    Ich bitte mal um Hilfe,
    wie muß ich die SQL-Anweisung umbauen so das beide Kriterien ausgeführt werden.

    Code:
    DModule->tblVerbrauch->Close();
    DModule->tblVerbrauch->SQL->Clear();
    DModule->tblVerbrauch->SQL->Add("Select *From tbl_Verbrauch");
    DModule->tblVerbrauch->SQL->Add("Where (tbl_Verbrauch.Kategorie = '" +   edtKategorie->Text + "')");
    DModule->tblVerbrauch->SQL->Add("  And (tbl_Verbrauch.Datum = ' " + edtDATUM->Text + " ' )");  !!??
    DModule->tblVerbrauch->Open();
    Danke für eure Hilfe
    F.W.

    BCB 5.0 Prof

  • #2
    nichts, warum wird es nicht ausgeführt?

    Welches SQL Fehler kommt?
    Zuletzt editiert von Christian Marquardt; 31.05.2008, 20:33.
    Christian

    Comment


    • #3
      Folgende Fehlmeldung tritt auf.

      "Datentypen in Kriterienausdruck unverträglich"

      Comment


      • #4
        In welchem Format ist das Datum in der DB und was übergibt du aus dem Editfeld?

        Was wird doch die Ursache sein
        Christian

        Comment


        • #5
          Ich würde an deiner Stelle (SQL-)Parameter einsetzen. Außerdem würde ich eine DateTimePicker satt einem Edit verwenden.
          Code:
          DModule->tblVerbrauch->SQL->Text = "Select * From tbl_Verbrauch" +
                                             " Where tbl_Verbrauch.Kategorie = :kat" + 
                                             " And tbl_Verbrauch.Datum = :datum";
          DModule->tblVerbrauch->SQL->ParamByName("kat").Value = edtKategorie->Text;
          DModule->tblVerbrauch->SQL->ParamByName("datum").Value = dtDATUM->Date;

          Comment


          • #6
            Hallo Markus
            danke für den Tipp

            nach dem ich ein paar kleinigkeiten geändert habe funktioniert es.

            Code:
            DModule->sqlVerbrauch->SQL->Text = "Select * From tbl_Verbrauch "
                                              " Where (tbl_Verbrauch.Kategorie = :kat)"
                                              " And (tbl_Verbrauch.Datum = :datum)";
            DModule->sqlVerbrauch->Params->ParamByName("kat")->AsString = cmbKategorie->Text;
            DModule->sqlVerbrauch->Params->ParamByName("datum")->AsDate = edtDatum->Date;
            Das Plus und den Value wert wollte er nicht so

            Ich greife mit einer KDAO tbl auf eine Access Datenbank zu und das edtDatum ist ein DBDateEdit mit Calender von Almdev

            Mfg Frank

            Comment

            Working...
            X