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

Msg 2627, Level 14, State 1, Line 1

Estas en el tema de Msg 2627, Level 14, State 1, Line 1 en el foro de Mysql en Foros del Web. Tengo el mensaje de error donde no me deja insertar "archivos duplicados" ya los revise y no los tengo las instrucciones son : select * ...
  #1 (permalink)  
Antiguo 20/04/2012, 10:06
 
Fecha de Ingreso: abril-2012
Ubicación: Monterrey
Mensajes: 2
Antigüedad: 12 años, 8 meses
Puntos: 0
Msg 2627, Level 14, State 1, Line 1

Tengo el mensaje de error donde no me deja insertar "archivos duplicados" ya los revise y no los tengo las instrucciones son :

select * into #tmptabla6 from UsuarioCfg2
UPDATE #tmptabla6 SET #tmptabla6.usuario = t1.defactividad FROM usuario as t1, #tmptabla6 as t2 where t1.usuario = t2.usuario
select * from #tmptabla6 order by usuario
delete #tmptabla6 where usuario = '' or Usuario ='malarcon'
insert into UsuarioCfg2 select * from #tmptabla6
*** esta ultima instruccion es donde marca el error
  #2 (permalink)  
Antiguo 20/04/2012, 10:50
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Msg 2627, Level 14, State 1, Line 1

Técnicamente hablando, lo que no puedes ingresar son registros duplicados, no archivos.
El problema esencial es que si estás haciendo esto:
Código MySQL:
Ver original
  1. INSERT INTO  UsuarioCfg2
  2. SELECT * FROM #tmptabla6;
Estás volcando todo el contenido de la segunda tabla en la primera, incluyendo aquellos valores que en la primera tabla son la PK. Y si al menos uno de ellos ya existe, se considera registro duplicado, sin importar qué es o que contenga.
Explica mejor qué estructura tienen cada tabla, y veremos cómo resolverlo.
__________________
¿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 20/04/2012, 10:58
 
Fecha de Ingreso: abril-2012
Ubicación: Monterrey
Mensajes: 2
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Msg 2627, Level 14, State 1, Line 1

que tal gracias por tu atención, mira corro esta instruccion para revisar si tengo registros duplicados en ambas tablas :
select Usuario from UsuarioCfg2 where Usuario in (select Usuario from #tmptabla6)
tando como resultado el select vacio... de hecho ya copielos registros de ambas tablas en excell y lso busque en un vlookop y no encontre nada de una a otra y viceversa. es lo que me extraña la tabla usuariocfg2 esta indexada por el campo usuario que es el campo llave
  #4 (permalink)  
Antiguo 20/04/2012, 12: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: 17 años
Puntos: 2658
Respuesta: Msg 2627, Level 14, State 1, Line 1

Creo que no me has entendido del todo
Postea el CREATE TABLE de cada una de las tablas, o revisa las claves primarias de la tabla respecto a los valores que pretendes ingresar.
Trata de asumir un detalle: MySQL no comete errores. Si te dice que los registros están duplicados, entonces lo están.

La pregunta es: ¿"Usuario" es PK en esa tabla?
Que tenga indice es irrelevante si ese indice no es UNIQUE, o si no es PK.

PD: Trata de escribir mas claro, separando los códigos de SQL del resto porque no se entiende bien lo que escribes. Está todo amontonado.
Sin ofender.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: level, line, msg, select
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 01:11.