harald: Datensätze aus gleicher Tabelle mittels "insert" kopieren

Hallo!

Ich will mittels eines Insert's und einem Subselect einen Datensatz in derselben Tabelle kopieren.
Das INSERT:
"INSERT INTO amkopf
            (anfnr,
             bezeich,
             gueltvon,
             gueltbis,
             gruppe,
             userneu,
             datneu,
             waehrng,
             liefkdt)
     SELECT '$anfnrneu',
            '$cbezeich',
            ak.gueltvon,
            ak.gueltbis,
            ak.gruppe,
            '$cookie_user',
            NOW(),
            ak.waehrng,
            ak.liefkdt
      FROM  amkopf ak
     WHERE  anfnr = '$anfnr'"

bekomme aber die Fehlermeldung:

INSERT TABLE 'amkopf' isn't allowed in FROM table list

Gibt es eine andere "nur SQL" - Variante um dieses Problem zu umgehen, oder muß ich mit 2 Statements und einer While-Schleife arbeiten (was ich eigentlich nicht will). DB's sind ja da um zu arbeiten ;)
Ich benutze als DB: MySQL 3.22.32 und kanns konfigurieren wie ich will.

danke, für jede Hilfe
harald

  1. Kommando zurück, hab grad alles im MySql - Manual gefunden,
    muß vorher immer drübergelesen haben.
    geht nicht, da man sonst ja vielleicht gerade erst eingefügte Datensätze mitfindet, irgendwie logisch.

    pfiat eich
    harald

  2. Hallo!

    Hallo

    Ich will mittels eines Insert's und einem Subselect einen Datensatz in derselben Tabelle kopieren.
    [...]
    Ich benutze als DB: MySQL 3.22.32 und kanns konfigurieren wie ich will.

    Ich habe mal irgenwo gelesen, dass ein Subselect in einem Select bei MySQL nicht möglich sei. Ob dies bei deiner Version und bei einem Insert auch so ist kann ich nicht sagen. Schau am besten zu erst im Manual nach, ob dies möglich ist.

    MfG

    Tom2

    1. Hallo

      Ich habe mal irgenwo gelesen, dass ein Subselect in einem Select bei MySQL nicht möglich sei. Ob dies bei deiner Version und bei einem Insert auch so ist kann ich nicht sagen. Schau am besten zu erst im Manual nach, ob dies möglich ist.

      Hab wie vorher schon geposted, jetzt das jeweilige Statement im
      Manual gefunden:
      Punkt 6.4.3.1 Insert...Select Syntax

      Das haben das als fast eigenständigen Befehl implementiert, und es funktioniert nur nicht in einer einzigen Tabelle.

      gruß
      harald