Dovrei importare dei dati che ho in una tabella, in un'altra un po' diversa.
Si tratta di recensioni dei miei clienti, il problema e' che nella vecchia tabella (quella popolata di record) ho il nome dell'hotel e non l'id, mentre nella nuova e' previsto l'id_htl.
Ecco come sono fatti i database:
NUOVA STRUTTURA
STRUTTURA VECCHIA E POPOLATAcodice:CREATE TABLE IF NOT EXISTS `tbl_feedback` ( `id` int(10) NOT NULL AUTO_INCREMENT, `id_htl` int(11) unsigned NOT NULL DEFAULT '0', `id_pta` int(10) NOT NULL DEFAULT '0', `nome` char(30) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `cognome` char(35) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `tipo_vacanza` tinyint(1) NOT NULL DEFAULT '0', `soddisfatto` tinyint(1) NOT NULL DEFAULT '0', `gia_cliente_nostro` tinyint(1) NOT NULL DEFAULT '0', `prossima_vacanza` tinyint(2) NOT NULL, `voto_hotel` float NOT NULL DEFAULT '0', `recensione` text CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL, `data_commento` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `moderato` tinyint(1) NOT NULL DEFAULT '0', `ip` char(25) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `id_htl_2` (`id_htl`,`id_pta`), KEY `id_pta` (`id_pta`), KEY `moderato` (`moderato`), KEY `id_htl` (`id_htl`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
i dati nella tabella vecchia stanno in questo modo:codice:CREATE TABLE IF NOT EXISTS `commenti` ( `id` int(10) NOT NULL AUTO_INCREMENT, `nome` varchar(30) NOT NULL DEFAULT '', `cognome` varchar(35) NOT NULL DEFAULT '', `hotel` varchar(55) NOT NULL DEFAULT '', `tipo_vacanza` int(1) NOT NULL, `soddisfatto` char(2) NOT NULL DEFAULT '00', `gia_cliente_nostro` char(2) NOT NULL DEFAULT '', `scelta_hotel` varchar(25) NOT NULL DEFAULT '', `prossima_vacanza` char(2) NOT NULL DEFAULT '', `voto_hotel` float NOT NULL DEFAULT '0', `recensione` text NOT NULL, `data_commento` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=927 ;
a questo punto, ho cambiato il campo "hotel" dove c'e' HOTEL AGIP in 1, visto che l'id di questo hotel è 1, ma non basta per fare l'import da phpmyadmin, mi mette solo la prima riga oppure mi da questo errore:codice:INSERT INTO `commenti` (`id`, `nome`, `cognome`, `hotel`, `tipo_vacanza`, `soddisfatto`, `gia_cliente_nostro`, `prossima_vacanza`, `voto_hotel`, `recensione`, `data_commento`) VALUES (4, 'PINCO', 'PALLINO', 'HOTEL AGIP', 0, 'Si', 'No', '', 0, 'hotel molto soddisfatto dell'hotel, ottima pulizia', '2009-07-20 18:58:49'),
#1062 - Duplicate entry '1-0' for key 'id_htl_2'
Come posso risolvere? mettere 1000 commenti a mano sarebbe una sfacchinata
non capisco questo id_htl_2 da dove esce...


Rispondi quotando
