Ej de Stored Procedures.

30/07/2004 - 11:12 por Diego | Informe spam
Hola a todos, quisiera que alguien me pueda responder lo
siguiente:
1)Como seria una sp para generar codigos incrementables
univocos, es decir si dos usuarios se conectan
contemporaneamente a la tabla de UltimosNros, no les de el
mismo nro.
2)Como seria la sp que me haga el back-up de mi db.

Agradezco enormente a quien me tire un pedazo de codigo al
respecto.

Saludos,
Diego.
 

Leer las respuestas

#1 Carlos Sacristan
30/07/2004 - 11:53 | Informe spam
1) tienes varias opciones, pero una comúnmente utilizada es crear una
tabla con el último número generado y una clave que identifique el proceso
para el que lo quieres (para poder utilizar dicha tabla para generar más de
un número). Para recoger ese número correlativo podrías usar la siguiente
sentencia

CREATE PROCEDURE pa_dameNumeroCorrelativo( @Contador INT= NULL OUTPUT,
@aplicacion VARCHAR(50) )AS
BEGIN TRAN
UPDATE numeros SET @Contador = contador + 1 WHERE aplicacion @aplicacion
COMMIT TRAN

Esto te asegura que el número generado será único, pero es probable que
haya saltos si al llamar al sp anterior no se utiliza el número recogido
(aunque no parece que lo necesites). De todos modos, si no te quieres
complicar, puedes dejar al gestor que sea él quién genere este contador
mediante la creación de un campo con la propiedad IDENTITY activada

También puedes usar lo que se llaman "bloqueos de aplicación" mediante
los procedimientos almacenados SP_GETAPPLOCK y SP_RELEASEAPPLOCK. Echa un
vistazo en los BOL para ver cómo funcionan.

2) revisa el tema de las copias de seguridad y restauraciones en los
BOL, es la mejor fuente de información al respecto. Si sabes inglés te
puedes descargar gratuitamente un capítulo del libro "Real World SQL-DMO for
SQL Server" que trata sobre el tema (http://www.markallison.co.uk/) y
también puedes repasar un pequeño artículo de Emilio Boucau sobre los
backup:
http://www.configuracionesintegrale...s.asp?arti
culo6


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Diego" escribió en el mensaje
news:70ab01c47615$650391a0$
Hola a todos, quisiera que alguien me pueda responder lo
siguiente:
1)Como seria una sp para generar codigos incrementables
univocos, es decir si dos usuarios se conectan
contemporaneamente a la tabla de UltimosNros, no les de el
mismo nro.
2)Como seria la sp que me haga el back-up de mi db.

Agradezco enormente a quien me tire un pedazo de codigo al
respecto.

Saludos,
Diego.

Preguntas similares