Saltar al contenido

ERROR de PostgreSQL: INSERT tiene más columnas de destino que expresiones, cuando no es así

Tenemos la contestación a este atasco, o por lo menos eso esperamos. Si presentas alguna duda puedes dejarlo en el apartado de preguntas y sin dudarlo te ayudaremos

Solución:

quitar el extra () :

INSERT INTO parts_finishing 
(
 id_part, id_finish, id_metal, id_description, 
 date, inside_hours_k, inside_rate, outside_material
) VALUES 
  ('1013', '6', '30', '1', NOW(), '0', '0', '22.43')
, ('1013', '6', '30', '2', NOW(), '0', '0', '32.45')
  ;

Tuve un problema similar al usar sql string composición con psycopg2 en Pitón, pero el problema era ligeramente diferente. Me faltaba una coma después de uno de los campos.

INSERT INTO parts_finishing
(id_part, id_finish, id_metal)
VALUES (
    %(id_part)s <-------------------- missing comma
    %(id_finish)s,
    %(id_metal)s
);

Esto causó psycopg2 para producir este error:

ERROR: INSERT tiene más columnas de destino que expresiones.

Esto me sucedió en una inserción grande, todo estaba bien (en comas), me tomó un tiempo darme cuenta de que estaba insertando en el mesa equivocada por supuesto, el DB no conoce sus intenciones. Copiar y pegar es la raíz de todos los males... 🙂

Al final de todo puedes encontrar las acotaciones de otros programadores, tú de igual forma puedes insertar el tuyo si lo deseas.

¡Haz clic para puntuar esta entrada!
(Votos: 2 Promedio: 4.5)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *