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

insert e insert into dentro de un SP

Estas en el tema de insert e insert into dentro de un SP en el foro de SQL Server en Foros del Web. Hola a todosss!!!. He aqui mi problemas, dentro deun procedimiento estoy tratando de insertar en una tabla (llamemosla tabla 2) varios campos contenidos en otra(tabla ...
  #1 (permalink)  
Antiguo 10/08/2011, 12:07
 
Fecha de Ingreso: junio-2011
Ubicación: La Habana
Mensajes: 22
Antigüedad: 12 años, 10 meses
Puntos: 0
insert e insert into dentro de un SP

Hola a todosss!!!. He aqui mi problemas, dentro deun procedimiento estoy tratando de insertar en una tabla (llamemosla tabla 2) varios campos contenidos en otra(tabla 1) según un parámetro fecha dado y ademas insertar en la tabla 2 otro campo en este caso varchar. Les pongo un ejemplo para que se lleven la idea:

Tabla 1

id Nombre Apellido FechaNacimiento

Tabla 2:

id Nombre Departamento

imaginense el procedimiento al que le paso como parametro la @fecha y el @departamento y quiera insertar el nombre desde la ltabla 1 a la 2 y el departamento(parametro) en la tabla 2, algo así:


begin

insert into tabla 2 (nombre) select nombre from tabla 1
where FechaNacimiento = @fecha

update tabla 2 set Departamento = @departamento where id = @@Identity

end

algo asi, teniendo en cuenta que el campo id es llave e indentity, pero así no me funciona no me inserta nada, no se si es que la clausula where (la que esta en negritas) se me interpreta como de la tabla 1 que es lo que quiero o de la tabla 2. Si alguien e puede ayudar o tiene otra idea de como hacerlo soy todo oido o mejor dicho vista. Gracias

Salu2
  #2 (permalink)  
Antiguo 10/08/2011, 12:30
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: insert e insert into dentro de un SP

Este select te regresa datos?

select nombre from tabla 1
where FechaNacimiento = @fecha


si te quieres asegurar que esta tomando la tabla correcta usa nombres de 2 partes algo asi:


insert into tabla2 (nombre)
select tabla1.nombre from tabla 1
where tabla1.FechaNacimiento = @fecha


Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 10/08/2011, 16:54
Avatar de SDEK  
Fecha de Ingreso: diciembre-2009
Ubicación: MX
Mensajes: 156
Antigüedad: 14 años, 3 meses
Puntos: 8
Respuesta: insert e insert into dentro de un SP

Hola,

Hice las pruebas en un base de datos de pruebas y el sp, se ejecuta correctamente. Tal vez el valor de @fecha no tiene el mismo formato que tabla1.FechaNacimiento y no se puede evaluar correctamente.

Saludos,
__________________
Tecnologías de la Información
Karel Priego
| @karelpriego
  #4 (permalink)  
Antiguo 11/08/2011, 07:28
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: insert e insert into dentro de un SP

y porque no imprimes el valor de @fecha que estas mandando?? si tienes problemas con los formatos de fecha usa la funcion convert(), con su respectivo formato.

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 11/08/2011, 11:42
 
Fecha de Ingreso: junio-2011
Ubicación: La Habana
Mensajes: 22
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: insert e insert into dentro de un SP

Gracias a todos por sus sugerencias, en efecto Libras el select solo no retornaba datos y ahi estaba el problema un pequeño problema con el beteen (parte que no habia puesto en el ejemplo, mis disculpas por eso) pero ya lo resolvi. Ahora el problema radica en que al aumetarle un parametro a ese procedimiento, un parametro varchar para filtar por el, es decir, puede ser = a uno de los campos de la tabla (en este caso tabla 1)o bien parte de este campo, imaginese que yo tengo un campo con valor: Shael, Pepe, Alberto y lo que me pasan como parametro es 'Alber' y lo que necesito es que filtre en la cláusula where, he intentado hacerlo con in, es decir, where @parametro in Campo pero no me devuelve nada, alguna idea????. Gracias a todos
  #6 (permalink)  
Antiguo 11/08/2011, 11:58
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: insert e insert into dentro de un SP

ya probaste con like???

select * from tabla where campo like '%parametro%'
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #7 (permalink)  
Antiguo 11/08/2011, 12:14
 
Fecha de Ingreso: junio-2011
Ubicación: La Habana
Mensajes: 22
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: insert e insert into dentro de un SP

Cita:
Iniciado por Libras Ver Mensaje
ya probaste con like???

select * from tabla where campo like '%parametro%'
Si he probado con el like y sucede lo mismo que con el in, no da error pero no me devuelve nada, solo campos vacios, sin embargo lo cambio el parametro para que sea igual al contenido del campo y si me sale.
  #8 (permalink)  
Antiguo 11/08/2011, 12:41
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: insert e insert into dentro de un SP

Como estas haciendo el like??

Porque si por ejemplo tienes la cadena que pones de ejemplo Shael, Pepe, Alberto y te mandan de parametro Alber tendrias que poner el like asi:

select * from tabla where campo like '%Alber%'

para que pueda encontrar las incidencias dentro de tu campo.

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #9 (permalink)  
Antiguo 11/08/2011, 12:46
 
Fecha de Ingreso: junio-2011
Ubicación: La Habana
Mensajes: 22
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: insert e insert into dentro de un SP

Diste con el clavo libras, mareo mio, estaba poniendo el orden al reves. Gracias hermano.

Etiquetas: fecha, insert, procedimiento, select, tabla, campos
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 03:46.