Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Cual es el algoritmo del campo autoincremental de una Base de Datos

Estas en el tema de Cual es el algoritmo del campo autoincremental de una Base de Datos en el foro de Bases de Datos General en Foros del Web. Saludos comunidad, tengo esta duda quisiera saber cual es el algoritmo que usa un gestor de base de datos, para el campo autoincremental, porque de ...
  #1 (permalink)  
Antiguo 16/09/2011, 09:25
Avatar de skyz  
Fecha de Ingreso: abril-2010
Mensajes: 170
Antigüedad: 14 años
Puntos: 1
Exclamación Cual es el algoritmo del campo autoincremental de una Base de Datos

Saludos comunidad, tengo esta duda quisiera saber cual es el algoritmo que usa un gestor de base de datos, para el campo autoincremental, porque de todos los gestores de base de datos que probe por el momento (Sql Sever 2008, Mysql, PostgreSql), solo se puede inicializar dicho campo como entero y yo quisiera guardar este campo autoincremental en un campo de tipo cadena, tambien me valdria manipular ese valor autoincremental, para guardarlo en una variable y luego guardarlo en el campo tipo cadena, en un procedimiento almacenado, pero nose si se podra lograr.

Gracias por su tiempo
  #2 (permalink)  
Antiguo 16/09/2011, 12:59
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Cual es el algoritmo del campo autoincremental de una Base de Datos

El autoincremental de lso gestores de base de datos no tiene mucha ciencia, es solo un valor que se va incrementando cada que se hace una insercion ya sea exitosa o no, que quiere decir esto, que en una parte el gestor de base de datos almacena esta informacion y aumenta en la cantidad indicada el valor del autoincremental, si quieres hacer lo que dices lo puedes hacer con un max() y concatenar con lo que necesitas, ya que si tienes usuarios recurrentes que puedan actualizar la informacion en la base de datos podrias ver los diferentes niveles de aislamiento (isolation levels) que se pueden dar.

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 16/09/2011, 19:23
Avatar de skyz  
Fecha de Ingreso: abril-2010
Mensajes: 170
Antigüedad: 14 años
Puntos: 1
Respuesta: Cual es el algoritmo del campo autoincremental de una Base de Datos

Gracias por la respuesta, pero podria utilizar una semilla, que sea cero, luego sumar cada vez, pero lo malo es que siempre la semilla la inicializo en cero y no puedo avanzar, lo del max me serviria para ver el valor maximo que genero y sumarle mas uno, pero la cosa es la semilla y tambien si se borraron todos los elementos de la tabla como ver el valor maximo, nose donde podria guardar la semilla y despues modificarle su valor, porque siempre empieza en cero.

Última edición por skyz; 16/09/2011 a las 19:29
  #4 (permalink)  
Antiguo 17/09/2011, 00:57
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: Cual es el algoritmo del campo autoincremental de una Base de Datos

Holas,

En PostgreSQL puedes crear el autoincrement con CREATE SEQUENCE, y tambien puedes editarlos con ALTER SEQUENCE, y tambien puedes usarlos en cualquier procedure o triggers.

http://postgresqlya.com.ar/temarios/...d=228&punto=70
http://guegue.net/HowtoResetSequencePostgresql


Esto es lo mismo en ORACLE.

Saludos
__________________
.: Gildus :.

Etiquetas: algoritmos, autoincrementable, campos, bases-de-datos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:57.