FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Se puede pasar una tabla a un procedimiento almacenado?
Buenas, pues esa es la pregunta, tengo un procedimiento almacenado q llama a otro procedimiento almacenado. Es posible pasarle a este segundo una variable de tipo tabla igual q se hace con los demas tipos (money, int, varchar...). Si la respuesta es afirmativa como se hace??
Un saludo. |
#2
|
||||
|
||||
Puedes pasar un parametro como si fuera un string (varchar)... Lo que pasa es que el procedimiento que reciba este dato tendrá que tener un exec para ejecutar la acción...
Ejemplificando: Paso un parametro que es un varchar(20)
La instrucción de arriba, llamará al siguiente procedimiento...
Personalmente no me gusta anidar procedimientos... porque si anidas procedimientos muy complejos, tendras que tener un par de super-procesadores. Porque? Cuando haces un procedimiento, al ejecutarse por primera vez, el motor MsSql compilará este procedimiento... Cosa que tambien sucede con el método EXECUTE (EXEC), indistintamente se ejecute 1 vez ó 1000, siempre lo compilará ! Saludos !
__________________
El diseño dira si tiene futuro... |
#3
|
|||
|
|||
Buenas, en primer lugar gracias por responder.
La solución que me das es la única que podía hacer y como lo hacía hasta el momento, pasar en un String el nombre de la tabla y mediante SQL dinámico usarla. Pero quedaría más elegante poder pasar la tabla directamente, y lo que yo preguntaba era si alguien sabía si era posible ya que tras mirar en la ayuda del SQL y ver algo parecido a lo que pregunto y tras hacer bastantes pruebas no lo he conseguido. En cuanto a lo que comentas de no anidar procedimientos almacenados no estoy del todo de acuerdo. Lo primero es q das más modularidad a los procesos q tengas ya q desde un procedimiento almacenado llamas a uno u otro dependiendo de lo q tengas. Además no tienes 100000 de líneas en el mismo con lo q se ve bastante mejor lo q hace ybastante más sencillo revisarlo o cambiarlo. Un saludo. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿Una tabla sólo puede estar unida externamente como máximo a otra tabla ? | febito | Oracle | 0 | 22-06-2004 18:12:16 |
Procedimiento Almacenado | Ulises | Providers | 3 | 30-01-2004 18:14:58 |
Pasar nombre de tabla en SP | __cadetill | Firebird e Interbase | 4 | 19-09-2003 19:48:00 |
Procedimiento almacenado - BDE | Ricardo Alfredo | Conexión con bases de datos | 1 | 16-06-2003 21:31:34 |
Pasar punteros a objentos en un procedimiento | paldoc | Varios | 2 | 09-05-2003 16:39:35 |
|