Datenbankeinträge mit insert into



  • Hallo zusammen,

    welche Möglichkeiten gibt es daten mit insert in eine Datenbank zu bekommen?

    bis jetzt hab ich immer mit ParamByName gearbeitet, aber je größer die Datenbank wird desto lästiger wird es immer alle Spalten mit namen zu benennen. Zudem kann man nicht vernünftig mit schleifen arbeiten.

    Gibt es vielleicht auch andere Wege und mittel das zu umgehen?

    Mal als beispiel wie ich es bis jetzt gemacht habe:

    Query->SQL->Add("Insert into Tabelle(spalte1,spalte2,spalte3) values(:spalte1,:spalte2,:spalte3");   /* is auch ne ziemliche tipp arbeit wenn man da mal 20-30 spalten hat */
    Query->Parameters->ParamByName("spalte1")->Value="test1";
    Query->Parameters->ParamByName("spalte2")->Value="test2";
    Query->Parameters->ParamByName("spalte3")->Value="test3";
    Query->ExecSQL();
    

    Ich such jetzt so etwas wie bei select das man mit * oder sowas arbeiten kann. Gibt es sowas oder sowas ähnliches?

    Danke schonmal



  • Hallo

    Hier siehst du die möglichen Varianten von INSERT INTO bei PostGres. Da gibt es sehr wohl die Möglichkeit, die Feldnamen wegzulassen, muß dann aber auch die Werte immer in der richtigen Reihenfolge angeben und darf zwischendurch keine auslassen. Möglicherweise geht das auch bei dem DBS was du benutzt.

    Allerdings läßt sich da sehr wohl mit Schleifen arbeiten, du must eben nur die Feldnamen und die dazugehörigen Werte in ein Array packen, mit dem du dann den SQL-Befehl zusammensetzt.

    bis bald
    akari


Anmelden zum Antworten