![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
![]() hola a todos!!!!
tengo un pequeño problemilla con un procedimiento almacenado.... mi procedimiento es de inserción y es el siguiente:
pero cuando voy a la ejecución de mi programa no me funciona y cuando le quito el if not exists hay si me inserta entonces no entiendo el porque de esto y básicamente lo que necesito es que me inserte siempre y cuando esos 2 valores que estan en el select del if not exists no sean iguales a los que entro entonces estoy algo confundida con esto a quien me pueda ayudar se lo agradezco.... ![]() ![]() ![]() Última edición por delphi.com.ar fecha: 11-01-2006 a las 16:08:35. Razón: Agregué la etiquete SQL e identé el código |
#2
|
||||
|
||||
Hola:
Usa los Tag para que el código sea mas legible, no sé si es obligatorio usar los begin end cuando pones un if, yo siempre los utilizo, te recomiendo encarecidamente que veas los Book on Line de SQL Server, casi todo está allí, tiene muy buenos ejemplos y muy bien explicados. ![]() Hasta Luego -
__________________
No todo es como parece ser... |
#3
|
||||
|
||||
Cita:
![]() El código del store no es demasiado complejo como para ver que es lo que hace, ¿Que pasas si ejecutas el store desde la consola (QueryAnalyzer)?... ¿Estas segura que los datos tienen lo que crees que tiene?
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. ![]() |
#4
|
||||
|
||||
Cita:
Intenta explicarte un poco mejor...
__________________
El diseño dira si tiene futuro... |
#5
|
|||
|
|||
Prueba a hacerlo de la siguiente manera (no lo he probado, así que a lo mejor hay algún error de sintaxis):
|
#6
|
||||
|
||||
Cita:
Igualmente no recomiendo hacer un Count para saber si hay como mínimo un registro, simplemente porque el count se ejecuta completo, si la tabla es algo grande, imagínesen! Viendo nuevamente la pregunta de kejos, puedo suponer, que exita una UK o PK compuesta en la tabla históricos, y supongo nuevamente que comete el error en el exists solo filtrando por uno de los campos:
Kejos sería bueno que des alguna señal!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. ![]() |
#7
|
||||
|
||||
Bueno, yo diria que en vez de: select 1 from Historico
Debería ser: select top 1 * from Historico Y lo de: select Count(*) as @EXISTE from... No funcionaria, que el as es para el nombre del campo de salida... Debería ser: select @EXISTE=Count(*) from... Pero igualmente estoy de acuerdo con Federico, sobre como hacerlo.
__________________
El diseño dira si tiene futuro... |
#8
|
||||
|
||||
¿Y si lo intentas asi?
Cita:
Suerte. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Procedimiento almacenado | LucianoRey | MS SQL Server | 2 | 23-08-2005 00:37:06 |
Crear secuencia numerica con un procedimiento almacenado | DobleSiete | SQL | 9 | 15-04-2005 22:28:25 |
confirmar transaccion en un procedimiento almacenado | karocs | SQL | 3 | 09-08-2004 18:49:24 |
Ayuda sobre un Procedimiento Almacenado | Nuria | Firebird e Interbase | 6 | 21-01-2004 13:18:15 |
Procedimiento almacenado - BDE | Ricardo Alfredo | Conexión con bases de datos | 1 | 16-06-2003 21:31:34 |
![]() |
|