para Javier Loria

03/11/2003 - 16:06 por Accotto Maximiliano D. | Informe spam
Javier buen dia, el otro dia discutimos sobre un tema de Identity y creo q
la cosa no quedo clara.

Te voy a explicar bien como lo estamos usando (quizas te sirva para algo no
se)

El tema es asi:

Tenemos en la empresa un soft ERP bastante importante
(www.lillysoftweare.com) bien el cual en todas sus tablas tiene un campo
ROWID definido como identity.
Bien esto no se usa como una clave de busqueda ni mucho menos, vendria solo
a ser un numerador de fila dentro de la BDD, vos diras para que? bue te
explico algunas cosas de la vida practica de todos los dias:

una de estas tablas tiene por ej algo asi como:

Base_id,lot_id,split_id estos tres campos juntos vendrian a ser un primary,
(me explico) bien hay veces q para hacer un update o delete por ej en la
consulta hay q poner estos y mas campos aun para borrar o updetiar lo
correcto!! bien ahora al tener una columna rowid es muy simple la cosa te
imaginaras.

Solo los identity para ello se usan no como una llave tipo Factura_id (eso
si q es una locura).

Cuando tenes una aplicacion grande donde se trabaja mucho con la BDD
(updates,insert,etc) ya que los sistemas ERP en general no cubren cambios
masivos para ciertas cosas, es muy util usar esta tecnica del ROWID como
identity.

Otra aplicacion de mi parte nunca le di, ya que es un campo bastante
conflictivo.

bue todo esto solo es un tema de ingenieria de tu aplicacion.

Un abrazo y espero q sigas en este foro ayudando a los q te necesiten.



Accotto Maximiliano Damian

Preguntas similare

Leer las respuestas

#1 Isaías
03/11/2003 - 18:25 | Informe spam
Accotto Maximiliano Damian

Nuestro amigo Javier es ENEMIGO de los identity, yo
difiero tambien con el, creo que si fueron creados y
sirven, hay que usarlos.

En mi caso, yo tengo una aplicacion telefonica donde puedo
recibir hasta 5 millones de llamadas en media hora, a cada
una de ellas, le asigno un CONSECUTIVO, claro que lo hago
con una IDENTITY, hasta la fecha, CERO PROBLEMAS, me han
quitado un gran peso de encima.

Insisto, todo depende de la aplicacion.
Respuesta Responder a este mensaje
#2 Accotto Maximiliano D.
03/11/2003 - 18:48 | Informe spam
totalmente deacuerdo contigo!!
No se si vos programas en VB o .net pero hay casos q si no tenes un ROWID se
complica la cosa.

Un abrazo

Accotto Maximiliano Damian
"Isaías" escribió en el mensaje
news:107701c3a22f$75cabf50$
Accotto Maximiliano Damian

Nuestro amigo Javier es ENEMIGO de los identity, yo
difiero tambien con el, creo que si fueron creados y
sirven, hay que usarlos.

En mi caso, yo tengo una aplicacion telefonica donde puedo
recibir hasta 5 millones de llamadas en media hora, a cada
una de ellas, le asigno un CONSECUTIVO, claro que lo hago
con una IDENTITY, hasta la fecha, CERO PROBLEMAS, me han
quitado un gran peso de encima.

Insisto, todo depende de la aplicacion.

Respuesta Responder a este mensaje
#3 Isaías
03/11/2003 - 22:37 | Informe spam
Si, programo en VB, VBNET, pero como te comento, son
llamadas telefonicas a las cuales tengo que darles un
consecutivo, por lo que solamente les doy ese tratamiento,
NO SE BORRAN, NO SE ACTUALIZAN, ni nada por el estilo.
Respuesta Responder a este mensaje
#4 Javier Loria
04/11/2003 - 04:41 | Informe spam
Hola Accoto:
No te habia contestado porque estoy seguro que no te voy a convencer ya
que han convertido el tema del Identity en Religion, cuando no lo es.
Lo unico que me preocupa es que el resto de personas piense
efectivamente que en .NET (VB/C#) se produzcan problemas cuando las tablas
no usan Identity.
Esto simplemente NO es cierto, de hecho es lo contrario, hay una buena
cantidad de problemas que se producen en ADO.NET por usar identities. Los
que deseen pueden leer el articulo (en ingles) MANEJANDO LA CRISIS DE
IDENTIDAD en la siguiente ruta:
http://msdn.microsoft.com/library/d...crisis.asp

El articulo presenta y resuelve en .NET los problemas que produce el
Identity en ADO.NET, cuando hay relaciones Padres/Hijos. Adicionalmente hay
que notar que funciona con SQL 2000 y no con SQL 7.0 por la forma en que
esta definido el @@Identity y el Scope_Identity.

Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Accotto Maximiliano D. escribio:
totalmente deacuerdo contigo!!
No se si vos programas en VB o .net pero hay casos q si no tenes un
ROWID se complica la cosa.

Un abrazo

Accotto Maximiliano Damian

Nuestro amigo Javier es ENEMIGO de los identity, yo
difiero tambien con el, creo que si fueron creados y
sirven, hay que usarlos.

En mi caso, yo tengo una aplicacion telefonica donde puedo
recibir hasta 5 millones de llamadas en media hora, a cada
una de ellas, le asigno un CONSECUTIVO, claro que lo hago
con una IDENTITY, hasta la fecha, CERO PROBLEMAS, me han
quitado un gran peso de encima.

Insisto, todo depende de la aplicacion.
Respuesta Responder a este mensaje
#5 Carlos Sacristan
04/11/2003 - 07:55 | Informe spam
Estoy de acuerdo contigo, Javier. Aunque en el tema de los identity
diferimos un poco, el comentario acerca de que no utilizarlos en .NET
produzca como resultado errores, creo que no es correcto.

De todos modos, recomiendo el artículo de claves naturales vs.
artificiales de www.portalsql.com (no lo recomiendo porque ponga mi nombre,
al contrario, es simplemente un resumen de las opiniones de los gurús que
hay en este grupo). Ahí se detallan muchas cuestiones que en este hilo se
escapan



Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)
MVP SQL Server
Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Javier Loria" escribió en el mensaje
news:
Hola Accoto:
No te habia contestado porque estoy seguro que no te voy a convencer


ya
que han convertido el tema del Identity en Religion, cuando no lo es.
Lo unico que me preocupa es que el resto de personas piense
efectivamente que en .NET (VB/C#) se produzcan problemas cuando las tablas
no usan Identity.
Esto simplemente NO es cierto, de hecho es lo contrario, hay una buena
cantidad de problemas que se producen en ADO.NET por usar identities. Los
que deseen pueden leer el articulo (en ingles) MANEJANDO LA CRISIS DE
IDENTIDAD en la siguiente ruta:



http://msdn.microsoft.com/library/d...nadonet/ht
ml/manidcrisis.asp

El articulo presenta y resuelve en .NET los problemas que produce el
Identity en ADO.NET, cuando hay relaciones Padres/Hijos. Adicionalmente


hay
que notar que funciona con SQL 2000 y no con SQL 7.0 por la forma en que
esta definido el @@Identity y el Scope_Identity.

Saludos,


Javier Loria
Costa Rica
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.
Accotto Maximiliano D. escribio:
> totalmente deacuerdo contigo!!
> No se si vos programas en VB o .net pero hay casos q si no tenes un
> ROWID se complica la cosa.
>
> Un abrazo
>
>> Accotto Maximiliano Damian
>>
>> Nuestro amigo Javier es ENEMIGO de los identity, yo
>> difiero tambien con el, creo que si fueron creados y
>> sirven, hay que usarlos.
>>
>> En mi caso, yo tengo una aplicacion telefonica donde puedo
>> recibir hasta 5 millones de llamadas en media hora, a cada
>> una de ellas, le asigno un CONSECUTIVO, claro que lo hago
>> con una IDENTITY, hasta la fecha, CERO PROBLEMAS, me han
>> quitado un gran peso de encima.
>>
>> Insisto, todo depende de la aplicacion.


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida