Digamos que el nexthi a tomar es 1 y el max_lo es 100
Entonces para la primer entidad persistente va a generar desde 101, para la
segunda entidad persistente desde 201...etc
Lo que te asegura eso es que el ID es unico para toda la base.

Si vos tenes ahora 19 en la tabla, NH va a decir, ok, para la proxima
entidad uso 20 o sea desde 2001, podes empezar de ahi, sin hacerlo
especifico por entidad y llegar no se a 50010, entonces si pones ahora 500
en la tabla, la proxima vez va a tomar 50101 y va a seguir desde esa
numeracion, pero con toda la logica de NH.

En definitiva Podes incluso mantener los IDs que tenes y asegurarte de que
NH use un hi que sea ((hi+1) * max_lo + 1) > max(ID) en la base que
migraste.

Digo, si no queres ponerte a jugar con los ids, y son de 6 digitos contra la
millonada de digitos que te da bigint :)

Gustavo.

2010/7/20 Juan Cuello <[email protected]>

> Cuando dije agregar 1 al high me refería leer y utilizar el actual y
> incrementarlo, asegurando que HI actual con LOW generado sea único.
>
> Así es correcto?
>
> On 20 jul, 10:51, Gustavo Ringel <[email protected]> wrote:
> > Lo que podes hacer es tomar el next hi. Hacer todos los inserts que
> > nnecesites desde ese id y luego setear el hi en numero de inserts /
> > max-lo + 1
> > de niguna manera agregar 1 al hi como mencionaste.
> >
> > Si esa info es inicial  lo que yo he hecho es insertar eso primero y
> > luego setear un valor de hi que me asegure un id mayor al ultimo
> > insertado
> > Gustavo
> >
> > On 7/20/10, Juan Cuello <[email protected]> wrote:
> >
> >
> >
> > > Hola,
> >
> > > Resulta que debo realizar tratamientos de datos en T-SQL (SQL Server)
> > > para una migración de un modelo de datos antiguo a otro nuevo. Las
> > > tablas del nuevo modelo están para ser utilizadas con NHibernate y
> > > HILO.
> >
> > > En el modelo de datos nuevo, tengo la tabla requerida por NH para el
> > > hilo.
> >
> > > Cuando realice el proceso de migración e inserte en mis tablas nuevas,
> > > ¿cómo debo generar los ID's?
> >
> > > ¿Sería suficiente con utilizar el high existinte, incrementarlo, y
> > > tener una variable en el script que se vaya incrementando para cada
> > > insert? ¿Hay algún método más limpio y eficaz?
> >
> > > Muchas gracias
> >
> > > --
> > > Para escribir al Grupo, hágalo a esta dirección:
> > > [email protected]
> > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a