Insert en Stored Procedure con un numero de parametros variable

Iniciado por haupter, 23 Marzo 2013, 16:53 PM

0 Miembros y 1 Visitante están viendo este tema.

haupter

Hola que tal?

Soy nuevo aquí, y estaba buscando desesperado ayuda para un problema que me trae de cabeza desde hace varios dias.

Necesito poder hacer un insert (tambien select y delete, pero seria la misma logica) en un stored procedure de tal manera que si tengo dos tablas de distinta extension, "usuarios" y "grupos" por ejemplo, pueda llamar al mismo SP. Algo asi:

CALL insert (@nombreusuario,@fecha,@email)
CALL insert (@nombregrupo,@nivel)

Se podria usar el mismo SP ("insert")? La unica manera que se me ocurre es pasar un varchar, y dentro de este mandar todos los valores, con un separador. El problema que tengo es que ademas de que el varchar es muy pequeño, despues no se si podria colocarlo en el insert de la tabla correspondiente.

Alguien puede ayudarme? Muchas gracias de antemano

1mpuls0

No te compliques la existencia lo mejor es crear procedimientos separados, dependiendo de tus necesidades o podrías crear uno por ejemplo.

CALL insertar_usuario(@nombre_usuario, @fecha, @email, @nombre_grupo, @nivel)

Dentro de tu procedimiento tendrías los insert correspondientes a cada tabla

...
INSERT INTO usuarios(nombre, fecha, email) VALUES(nombre_usuario, fecha, email);
INSERT INTO grupos(nombre, nivel) VALUES(nombre_grupo, nivel);
...

Saludos.
abc