[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Apr 2002
    Beiträge
    792

    Insert vom mehr als einer Zeile???

    Hallo,

    es geht noch um mein Thema von gestern, allerdings ist die Problemstellung eine andere. Wie bekomme ich mehr als eine Zeile an eine neue Tabelle angefügt? Ich hatte mir das ungefähr so vorgestellt:

    PHP-Code:
    INSERT INTO Table1 VALUES(
    Select Kundenr FROM Kundenliste
    GROUP BY Kundenr

    So wie das aussieht kann der INSERT das nicht bzw. nur eine Zeile ?! In Access funktioniert es allerdings
    Wie bekommt man es hier hin? Bin über jeden Tip dankbar.

    Gruß

    Sascha

  2. #2
    Registriert seit
    Dec 2003
    Beiträge
    106
    Hallo,

    ich hab das ganze mal ausprobiert und konnte ohne Probleme mehrere Zeilen einfügen.

    Ist dein SQL genauso wie du ihn hier beschrieben hast ?

    Versuch's doch mal alternativ mit distinct(Kundennr)

    sim

  3. #3
    Registriert seit
    Apr 2002
    Beiträge
    792
    Hi, ja ist des Statement. Hier die Fehlermeldung

    Nachricht . . . : Ergebnis der Anweisung enthält mehr als eine Zeile.
    Ursache . . . . : Die Ergebnistabelle einer Anweisung SELECT INTO, einer
    Unterabfrage oder einer Unterauswahl einer Anweisung SET enthält mehr als
    eine Zeile. Es handelt sich um Fehlerart 2. Bei Fehlerart 1 wurde von einer
    Anweisung SELECT INTO versucht, mehr als eine Zeile zurückzugeben. Bei
    Fehlerart 2 wurde durch eine Unterauswahl eines Basisprädikats mehr als eine
    Zeile erstellt. Es ist nur eine Zeile zulässig.
    Fehlerbeseitigung: Die Auswahl so ändern, dass nur eine Ergebniszeile
    zurückgegeben wird, und die Anforderung wiederholen. Zur Verarbeitung
    mehrerer Ergebniszeilen müssen die Anweisungen DECLARE CURSOR, OPEN und
    FETCH verwendet werden. Für eine Unterabfrage können die Prädikate IN,
    EXISTS, ANY und ALL verwendet werden, um mehrere Ergebniszeilen zu
    verarbeiten. Wenn eine einzige Zeile erwartet wird, können Datenfehler, wie z. B. doppelte Zeilen, auftreten, die die Rückgabe mehrerer Zeilen bewirken.

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Der Insert sieht dann folgendermassen aus:

    insert into myfile
    select ....

    oder

    insert into myfile (feld1, feld2, ...)
    select feld1, feld2, ...
    from myfile2

    In der VALUES-Auflistung bezieht sich der Select genau auf ein Feld auf eine Zeile (scalarer Subselect).
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Apr 2002
    Beiträge
    792
    Arrr....der Value wars. Danke

Similar Threads

  1. SQL Insert in schleife
    By Robi in forum IBM i Hauptforum
    Antworten: 20
    Letzter Beitrag: 16-03-09, 10:32
  2. SQL: Insert bei NULL
    By woki in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 31-10-06, 10:21
  3. nach Insert neu gen. Datensatz ermitteln
    By M.Kasper in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 25-08-06, 07:32
  4. SQL Insert: Zeichenbegrenzung???
    By Deficiency in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 13-01-06, 09:00
  5. SUBFILE - Einen bestimmten Satz in der 1. Zeile plazieren
    By malzusrex in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 29-10-04, 09:49

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •