Principales respuestas
duda con secuencias en sqlserver 2012

Pregunta
-
compañeros, me comentan que existen instrucciones de sqlserver en la version 2012 que se utilizan para sincronizar los consecutivos de tablas en base de datos, generan una secuencia de numeros unicos, pero según entiendo se pueden ejecutar al realizar un select a una tabla; de ser así es posible perder dicha secuencia al actulizar cierto campo de mi tabla que desface el control de secuencia en la base? como se podría reestablecer dicho valor sin afectar a las tablas?
La programacion en Microsoft cada ves se torna inalcanzable
- Editado alfonso_tecnicopa lunes, 20 de febrero de 2017 21:26
Respuestas
-
Como buscar objetos de tipo SECUENCIA?
select * from sys.sequences
Ahora, quieres ver que tablas afectan? no es posible, los objetos tipo SECUENCIA en su definición no integran parte del nombre de una tabla dado que no son dependientes de las tablas a diferencia de las columnas con la propiedad IDENTITY. Los objetos SECUENCIA son utilizados en las consultas de inserción y solo son invocados para obtener el número siguiente. Quieres determinar que tablas la utilizan? Creo que debes revisar el código.
- Marcado como respuesta alfonso_tecnicopa lunes, 20 de febrero de 2017 23:57
Todas las respuestas
-
Hola:
A que instrucciones te refieres? ROW_NUMBER , RESEED ? A que te refieres con "sincronizas los consecutivos de tablas" ?? sincronizar con que? Secuencia es un objeto de bases de datos, es posible que estes confundiendo los conceptos, puedes explicarme un poco más que es lo que deseas?
-
¿Sincronizar? ¿En base a que? ¿Te refieres a SEQUENCE?
{...} de ser así es posible perder dicha secuencia al actulizar cierto campo de mi tabla que desface el control de secuencia en la base?
No entiendo.
Alfonso, dale algo de detalle a tu requerimiento, en lo personal no entiendo el contexto ni lo que requieres.
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios. -
Está hablando de sequence, el que hubiera sido el sucesor aunque sin mucho existo del identity, un select no deberíade incrementar el valor de una secuencias, pero al igual que un identity un rollback o alta concurrencia pueden evitar que existe un consecutivo ordenado y existan huecos, esto es porque tanto como identity como sequence no garantizan el orden sino que sea siempre un número creciente.
-
¿Sincronizar? ¿En base a que? ¿Te refieres a SEQUENCE?
{...} de ser así es posible perder dicha secuencia al actulizar cierto campo de mi tabla que desface el control de secuencia en la base?
No entiendo.
Alfonso, dale algo de detalle a tu requerimiento, en lo personal no entiendo el contexto ni lo que requieres.
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.La programacion en Microsoft cada ves se torna inalcanzable
-
Hola:
A que instrucciones te refieres? ROW_NUMBER , RESEED ? A que te refieres con "sincronizas los consecutivos de tablas" ?? sincronizar con que? Secuencia es un objeto de bases de datos, es posible que estes confundiendo los conceptos, puedes explicarme un poco más que es lo que deseas?
creo me expliqué mal, el administrador de la base, ejecutó previamente "create secuence ........." para llevar control de registros entre dos o mas bases de datos en distinto servidor, pero ahora me interesa saber si así como se puede detectar trigers en una base, hay forma de detectar secuencias y ver a que tablas afectan
gracias
La programacion en Microsoft cada ves se torna inalcanzable
- Editado alfonso_tecnicopa lunes, 20 de febrero de 2017 22:11
-
Como buscar objetos de tipo SECUENCIA?
select * from sys.sequences
Ahora, quieres ver que tablas afectan? no es posible, los objetos tipo SECUENCIA en su definición no integran parte del nombre de una tabla dado que no son dependientes de las tablas a diferencia de las columnas con la propiedad IDENTITY. Los objetos SECUENCIA son utilizados en las consultas de inserción y solo son invocados para obtener el número siguiente. Quieres determinar que tablas la utilizan? Creo que debes revisar el código.
- Marcado como respuesta alfonso_tecnicopa lunes, 20 de febrero de 2017 23:57
-
-
Está hablando de sequence, el que hubiera sido el sucesor aunque sin mucho existo del identity, un select no deberíade incrementar el valor de una secuencias, pero al igual que un identity un rollback o alta concurrencia pueden evitar que existe un consecutivo ordenado y existan huecos, esto es porque tanto como identity como sequence no garantizan el orden sino que sea siempre un número creciente.
cierto,lo que pasa es que desconociendo yo la instrucción que genera la secuencia, la ejecuté pensando era un simple selectLa programacion en Microsoft cada ves se torna inalcanzable