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

mover registros antiguos

Estas en el tema de mover registros antiguos en el foro de Mysql en Foros del Web. Buen dia miren estoy tratando de mover registros antiguos de una tabla (tabla1) a otra identica (tabla2) acá esta la extructura de la tabla1: @import ...
  #1 (permalink)  
Antiguo 18/07/2011, 09:05
 
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 143
Antigüedad: 14 años, 11 meses
Puntos: 2
mover registros antiguos

Buen dia miren estoy tratando de mover registros antiguos de una tabla (tabla1) a otra identica (tabla2) acá esta la extructura de la tabla1:
Código MySQL:
Ver original
  1. CREATE TABLE `tabla1` (
  2.   `id` int(11) NOT NULL auto_increment,
  3.   `idCategoria` int(11) NOT NULL,
  4.   `titulo` varchar(250) NOT NULL,
  5.   `parrafo` text NOT NULL,
  6.   `fhCreacion` datetime NOT NULL,
  7.   PRIMARY KEY  (`id`),
  8.   KEY `idCatNot` (`idCategoria`),
  9. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=20316 ;
y esta es la tabla2 :
Código MySQL:
Ver original
  1. CREATE TABLE `tabla2` (
  2.   `id` int(11) NOT NULL auto_increment,
  3.   `idCategoria` int(11) NOT NULL,
  4.   `titulo` varchar(250) NOT NULL,
  5.   `parrafo` text NOT NULL,
  6.   `fhCreacion` datetime NOT NULL,
  7.   PRIMARY KEY  (`id`),
  8.   KEY `idCatNot` (`idCategoria`),
  9. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=20316 ;
como ven son identicas esta es la consulta que estoy ejecutando;
Código MySQL:
Ver original
  1. INSERT INTO tabla2 SELECT * FROM tabla1 WHERE fhCreacion < '18-06-2011 11:43:46';
pero al ejecutarla me entrega un valor vacio y tengo registros desde un año atras esta la fecha. La idea es mover todos los registros que tienen mas de 30 dias.
si algien tiene una idea de cual sea el problema de ante manos gracias
  #2 (permalink)  
Antiguo 18/07/2011, 09:16
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 8 meses
Puntos: 253
Respuesta: mover registros antiguos

No estoy muy seguro, pero creo que no puedes poner en el select el *, hay que especificar uno a uno los campos para insertar, ya que el primer campo sería autoincrement y no te permite valor en el insert.

La cosa sería así:
Código:
INSERT INTO tabla2 (SELECT idCategoria, titulo, parrafo, fhCreacion FROM tabla1 WHERE fhCreacion < '18-06-2011 11:43:46');
Si no te vale, avisa y miramos más. Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #3 (permalink)  
Antiguo 18/07/2011, 09:19
 
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 143
Antigüedad: 14 años, 11 meses
Puntos: 2
Respuesta: mover registros antiguos

Cita:
Iniciado por vgonga1986 Ver Mensaje
No estoy muy seguro, pero creo que no puedes poner en el select el *, hay que especificar uno a uno los campos para insertar, ya que el primer campo sería autoincrement y no te permite valor en el insert.

La cosa sería así:
Código:
INSERT INTO tabla2 (SELECT idCategoria, titulo, parrafo, fhCreacion FROM tabla1 WHERE fhCreacion < '18-06-2011 11:43:46');
Si no te vale, avisa y miramos más. Un saludo.
Ok puede que tengas razon no havia pensado en eso reviso y te aviso gracias.

mira hice la prueva como me lo indicaste y me arroja el siguiente error : #1241 - Operand should contain 1 column(s)

Última edición por Rasec101; 18/07/2011 a las 09:55

Etiquetas: php
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 13:57.