Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/07/2012, 17:44
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: error : Operand should contain 1 column(s)

Los paréntesis no operan de la misma forma en el INSERT INTO que dentro del SELECT.
Cuando los pones el el SETECT construyen una sola columna, porque indican una operación. Como en ese SELECT no existe una operación, sino una lista de columnas de salida, los paréntesis están de más.
Código MySQL:
Ver original
  1. INSERT INTO tabla2 (zona1,
  2.   zona2,
  3.   zona3,
  4.   zona4,
  5.   zona5,
  6.   zona6,
  7.   zona7,
  8.   zona8,
  9.   zona9,
  10.   zona10,
  11.   zona11,
  12.   zona12,
  13.   zona13,
  14.   zona14,
  15.   zona15,
  16.   zona6)
  17.   casilla1,
  18.   casilla2,
  19.   casilla3,
  20.   casilla4,
  21.   casilla5,
  22.   casilla6,
  23.   casilla7,
  24.   casilla8,
  25.   casilla9,
  26.   casilla10,
  27.   casilla11,
  28.   casilla12,
  29.   casilla13,
  30.   casilla14,
  31.   casilla15,
  32.   casilla16
  33. FROM tabla1

Por cierto, El diseño general, por lo que se infiere, parece contener errores de diseño, pero no es posible establecerlo con certeza porque no se sabe qué es lo que es esa tabla, la web o el formulario que usas para tomar los datos.
Lo que si se puede decir es que una regla del buen diseño expresa que si tienes dos tablas con los mismos datos, sin importar su origen, tienes un serio error de diseño de sistema y de estructura de datos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)