Announcement

Collapse
No announcement yet.

per SQL einen Wert aus einer Tabelle einer Variable zuweisen

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

  • per SQL einen Wert aus einer Tabelle einer Variable zuweisen

    Ich möchte gerne die Anzahl der Einträge aus einer Tabelle einer Variablen zuweisen. <br>
    So geht es nicht:<br>
    Sql:='select count(Nummer) from Test group by Nummer into :Anzahl';<br>
    Sql ausführen<br>
    query1.ParamByName(Anzahl).asinteger;<br>
    edit1.text := inttostr(Anzahl);<br>
    wie kann ich es anstellen?

    Danke für die Hilfe,

    Maik

  • #2
    Hallo,

    die Programmzeilen sind schon richtig, nur die SQL-Anweisung muss etwas korrigiert werden:
    <pre>
    SELECT COUNT(Nummer) AS Anzahl FROM Test
    </pre>
    Über das SQL-Schlüsselwort AS erhält die zurückgelieferte Spalte die Bezeichnung "Anzahl". Kommt AS aus irgend einem Grund nicht in Frage, kann der zurückgelieferte Wert immer noch über die Parameter-Position (und nicht über den Parameter-Namen) ausgelesen werden.
    &#10

    Comment


    • #3
      Ich möchte den Wert nicht in eine Tabelle schreiben, ich möchte den Wert gerne in ein Edit Feld einfügen. Wie mache ich das?

      Danke,

      Mai

      Comment


      • #4
        Hallo,

        das folgende Beispiel demonstriert den Aufruf. Es wird die Anzahl der Datensätze mit einer RecNr kleiner 50 ermittel:
        <pre>
        procedure TFormMain.ButtonSelectClick(Sender: TObject);
        var
        iResult : Integer;
        begin
        Screen.Cursor := crSQLWait;
        with DM.QueryTableGen do begin
        Close;
        SQL.Clear;
        SQL.Add('SELECT COUNT(*) AS Result FROM tablegen WHERE RecNr < "50"');
        try
        Open;
        ShowMessage(FieldByName('Result').AsString);
        iResult := FieldByName('Result').AsInteger;
        StatusBar1.SimpleText := Format(' %d Treffer im ResultSet.',
        [iResult]);
        finally
        Screen.Cursor := crDefault;
        end
        end
        end;
        </pre&gt

        Comment

        Working...
        X