Ho questo problema:

Immaginate di avere una tupla come, ad esempio:

codice:
+------------+-------------+---------------+--------+
| IDProdotto | IDCategoria | Descrizione   | Prezzo |
+------------+-------------+---------------+--------+
| 1          | 2           | Bla bla bla   | 5 euro |
+------------+-------------+---------------+--------+
Voglio creare una copia di questo prodotto nella categoria 3, cioe' voglio trovarmi in questa situazione:

codice:
+------------+-------------+---------------+--------+
| IDProdotto | IDCategoria | Descrizione   | Prezzo |
+------------+-------------+---------------+--------+
| 1          | 2           | Bla bla bla   | 5 euro |
| 2          | 3           | Bla bla bla   | 5 euro |
+------------+-------------+---------------+--------+
Avrei bisogno di farlo con una subquery unica. Come si fa in modo generale, cioe' senza sapere a priori i nomi delle colonne (a parte, ovviamente, quella da modificare)?

A quanto ho capito, MySQL 4.1 non supporta le subquery del tipo:

INSERT INTO .... WHERE (SELECT ....)

Non ho ancora installato MySQL 4.1.7 per questioni varie, c'e' qualcuno che puo' confermare questo comportamento?

A me sembra assurdo che per fare una operazione cosi' banale io mi debba incasinare la vita in PHP, anche perche' immaginate: come fare a capire quali dati hanno bisogno di apici e quali no? Rischio una sfilza di query di tipo getFieldType, una per ogni colonna.. un'assurdita'.