phpMyAdmin kopírování do tabulek - duplicate entry
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:
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:
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:
nebo lze kopírovat mezi databázemi
SQL query: Documentation
INSERT INTO `databaze`.`tabulka1` SELECT * FROM `databaze`.`tabulka2`
MySQL said: Documentation
#1062 - Duplicate entry '1' for key 'PRIMARY'
ODPOVĚĎ
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;
ODPOVĚĎ
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