Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

error al intentar duplicar parcialmente una tabla

Estas en el tema de error al intentar duplicar parcialmente una tabla en el foro de Mysql en Foros del Web. necesito duplicar parcialmente una tabla y estuve intentando algo como esto @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código sql: Ver original INSERT INTO clone_partida ( libro , codigo , ...
  #1 (permalink)  
Antiguo 06/07/2009, 01:20
 
Fecha de Ingreso: noviembre-2003
Mensajes: 403
Antigüedad: 20 años, 5 meses
Puntos: 4
error al intentar duplicar parcialmente una tabla

necesito duplicar parcialmente una tabla y estuve intentando algo como esto
Código sql:
Ver original
  1. INSERT INTO clone_partida (libro, codigo, referencia, fecha_doc, venc_neto, mora, importe, fecha)
  2. VALUES (SELECT libro, codigo, referencia, fecha_doc, venc_neto, mora, importe, fecha FROM partida)

Pero no funciona.. alguien podria ayudarme...
  #2 (permalink)  
Antiguo 06/07/2009, 05:10
Avatar de 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 al intentar duplicar parcialmente una tabla

Eso no te funcionará porque para usar INSERT la tabla tiene que existir previamente.
Lo que tu estás buscando es:
Código sql:
Ver original
  1. CREATE TABLE clone_partida AS
  2. SELECT libro, codigo, referencia, fecha_doc, venc_neto, mora, importe, fecha
  3. FROM partida

Nota:
- No copia índices, TRIGGERS, ni SP que la invoquen.
- No copia tampoco contraints, ni PK o FK que estén definidas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 06/07/2009, 07:57
 
Fecha de Ingreso: noviembre-2003
Mensajes: 403
Antigüedad: 20 años, 5 meses
Puntos: 4
Respuesta: error al intentar duplicar parcialmente una tabla

Bueno en mi caso la tabla ya estaba creada, y la cree usando

Código sql:
Ver original
  1. CREATE TABLE clone_partida LIKE partida

Despues de crearla elimine algunos campos...

y por eso solo deseo hacer un insert...
¿Por que simplemente no hago un create con los campos que deseo?, por que estos campos vendran de otras tablas ya existentes, digamos que este tabla sera una extraccion de otras 3 tablas para una limpieza... y este proceso se repetira una gran cantidad de veces...
  #4 (permalink)  
Antiguo 06/07/2009, 08:19
Avatar de 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 al intentar duplicar parcialmente una tabla

Entonces simplemente estás escribiendo mal la sentencia:
Código sql:
Ver original
  1. INSERT INTO clone_partida (libro, codigo, referencia, fecha_doc, venc_neto, mora, importe, fecha)
  2. SELECT libro, codigo, referencia, fecha_doc, venc_neto, mora, importe, fecha
  3. FROM partida;

Este modelo funciona sin importar si el SELECT abarca una o muchas tablas, en tanto recuerdes que debes poner la misma cantidad de campos en el SELECT que los que existen en la tabla destino.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 06/07/2009, 08:56
 
Fecha de Ingreso: noviembre-2003
Mensajes: 403
Antigüedad: 20 años, 5 meses
Puntos: 4
Respuesta: error al intentar duplicar parcialmente una tabla

Solo sobrava el values?
  #6 (permalink)  
Antiguo 06/07/2009, 08:59
Avatar de 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 al intentar duplicar parcialmente una tabla

Y los paréntesis.
Dale una leída detallada al manual de referencia: 13.2. Sentencias de manipulación de datos (Data Manipulation Statements), allí está mejor explicado el caso y uso de lo que necesitas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:19.