2011-12-05 11 views
10

tengo que convertir un código incorrecto en una mejor solución para calcular los recuentos de nuestro sitio. Tengo una tabla que cuenta el número de veces queconsulta de mysql no válida en la inserción

la tabla actual:

CREATE TABLE `hits_2011_12_5` (
    `count` int(11) DEFAULT NULL 
) ENGINE=MyISAM DEFAULT CHARSET=latin1; 

ahora quiero migrar lentamente el nuevo código a la anterior, pero tengo este error con el nuevo código:

[email protected]:test> insert into hits_2011_12_5 values (1,2,3,4,5); 
ERROR 1136 (21S01): Column count doesn't match value count at row 1 

¿cuál puede ser el problema?

+1

tal tabla de tabla significa "mejor solución"? –

+0

que es una estructura antigua, el viejo "experto" creó más de 1000 tablas con solo una columna para contar las solicitudes, etc. ... así que quiero cambiar eso y usar conteo (*) en lugar de una cláusula where para la fecha pero ahora Necesito migrar todos los datos a esta tabla, lo cual es un problema, así que creé un script php en lugar de hacerlo manualmente, pero obtuve este error – ana

+0

Su pregunta no tiene sentido. La tabla actual se llama "hits_2011_12_5" pero su consulta de inserción usa una tabla llamada "log". No nos da el esquema de la tabla "log", así que solo podemos adivinar cuál es el problema. – liquorvicar

Respuesta

11

uso esto:

[email protected]:test> insert into hits_2011_12_5 values (1),(2),(3),(4),(5); 
Query OK, 5 rows affected (0.00 sec) 
Records: 5 Duplicates: 0 Warnings: 0 

La consulta se trató requiere 5 columnas, la no inserción 5 líneas.

Cuestiones relacionadas