Direktes SQL-Statement mit Rückgabewert



  • Hallo zusammen,

    ich befinde mich im Moment auf der Suche nach einer Möglichkeit, ein SQL Statement auf eine Datenbank, aus einem CDatabase-Object raus, zu setzen.

    Das ist mit ExecuteSQL() nicht das Problem, funktioniert für meine Zwecke auf wunderbar. Nun stehe ich aber vor dem Problem, das ich eine Selectanweisung setzen möchte und alle Datensätze auf die, die gesetzten Selektionskriterien zutreffen in z.B. einem Array, list what ever zu speichern.

    Also als Beispiel:

    SELECT Kunden FROM Bestellungen WHERE Bestelldatum = 12.12.2008

    Zutreffen kann jetzt eine Anzahl von n Kunden. Und eben diese n Kunden müssen in mein Array, ein Recordset kommt für mich nicht in Frage. Ich hatte eigentlich geplant diese Aufgabe in meinem Programm (Selektieren, selektierte löschen) rein via SQL-Statements zu lösen.

    Gibt es ein Statement in C++ das es mir möglich macht, ein SQL-Statement auf meine Tabelle X zu setzen und als Rückgabe den Inhalt der Spalte Y zu bekommen?

    LG Julian.



  • JulianB schrieb:

    ...aus einem CDatabase-Object raus...

    ...Und eben diese n Kunden müssen in mein Array, ein Recordset kommt für mich nicht in Frage...

    Versteh ich nicht. Wie willst du denn ohne Recordset an die Daten kommen?! 🙂
    Anscheinend arbeitest du ja mit MFC. Dann kannst du doch einfach das Recordset auslesen und in ein CStringArray oder sowas schreiben.



  • anscheinend willst du c# und linq benützen. 🙂



  • JulianB schrieb:

    Hallo zusammen,

    ich befinde mich im Moment auf der Suche nach einer Möglichkeit, ein SQL Statement auf eine Datenbank, aus einem CDatabase-Object raus, zu setzen.

    Das ist mit ExecuteSQL() nicht das Problem, funktioniert für meine Zwecke auf wunderbar. Nun stehe ich aber vor dem Problem, das ich eine Selectanweisung setzen möchte und alle Datensätze auf die, die gesetzten Selektionskriterien zutreffen in z.B. einem Array, list what ever zu speichern.

    Also als Beispiel:

    SELECT Kunden FROM Bestellungen WHERE Bestelldatum = 12.12.2008

    Zutreffen kann jetzt eine Anzahl von n Kunden. Und eben diese n Kunden müssen in mein Array, ein Recordset kommt für mich nicht in Frage. Ich hatte eigentlich geplant diese Aufgabe in meinem Programm (Selektieren, selektierte löschen) rein via SQL-Statements zu lösen.

    Gibt es ein Statement in C++ das es mir möglich macht, ein SQL-Statement auf meine Tabelle X zu setzen und als Rückgabe den Inhalt der Spalte Y zu bekommen?

    LG Julian.

    Also ganz einfach: es gibt in C++ kein Statement, mit dem Du überhaupt irgendetwas in SQL machen kannst. Es gibt allerdings Bibliotheken, mit denen Du auf eine SQL-Datenbank zugreifen kannst.

    Anscheinend verwendest Du solch eine Bibliothek. Du erwähnst CDatebase. Das klingt wie eine Klasse aus einer Bibliothek.

    Wie wäre es denn, wenn Du einfach erst mal sagst, womit Du irgendetwas lösen willst, so dass wir nicht raten müssen. Damit bekommst Du möglicherweise präzisere Antworten.

    Und die Bedeutung der Aussage, ein SQL Statement auf eine Datenbank zu setzen, verstehe ich zumindest überhaupt nicht. Ich kann mich auf einen Stuhl setzen oder auch eine Variable auf einen Wert setzen aber ein SQL Statement auf eine Datenbank kenne ich nicht 🙄 .


Anmelden zum Antworten