phpMyAdmin kopírování do tabulek - duplicate entry

Před 2 lety napsal Tony

Vyřešeno phpMyAdmin copy tables - duplicate entry 1 for key PRIMARY
A ještě když se snažím v MySQL databázi přes phpMyAdmin do tabulky1 doplnit data z tabulky2, tak na mě vyskočí chyba:
SQL query: Documentation

INSERT INTO `databaze`.`tabulka1` SELECT * FROM `databaze`.`tabulka2`

MySQL said: Documentation
#1062 - Duplicate entry '1' for key 'PRIMARY' 

RE: phpMyAdmin kopírování tabulek…

Před 2 lety napsal Hanz

Zkontrolováno

Proveďte to takto, tabulka2 se překopíruje do dočasné tabulky temp, id se nastaví na NULL a pak se z tabulky temp obsah přidá to tabulka1:
CREATE TEMPORARY TABLE temp SELECT * FROM `tabulka2`;
UPDATE temp SET id = NULL;
INSERT INTO tabulka1 SELECT * FROM temp;
DROP TEMPORARY TABLE IF EXISTS temp;

RE: phpMyAdmin kopírování do…

Před 2 lety napsal Rusty

Zkontrolováno


20
Můžete na to jít také tak, že specifikujete sloupce, které chcete překopírovat a pak nemusíte řešit kolici klíčů id:

INSERT INTO tabulka2 (data,datum) SELECT data,datum FROM tabulka1

nebo lze kopírovat mezi databázemi
INSERT INTO db1.tabulka2 (data,datum) SELECT data,datum FROM db2.tabulka1
Tento web používá k poskytování služeb, personalizaci reklam a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tím souhlasíte. Další informace