Una sequence
en PostgreSQL hace exactamente lo mismo que AUTOINCREMENT
en MySQL. Una sequence
es más eficiente que un uuid
porque son 8 bytes en lugar de 16 para el uuid
. Puedes usar un uuid
como clave principal, como la mayoría de los otros tipos de datos.
Sin embargo, no veo cómo se relaciona esto con el enmascaramiento de una ID de usuario. Si desea enmascarar la ID de un determinado usuario de otros usuarios, debe administrar cuidadosamente los privilegios de la tabla y/o codificar la ID usando, por ejemplo, md5()
.
Si desea proteger una tabla con datos de usuario de piratas informáticos fisgones que intentan adivinar otras ID, entonces el uuid
El tipo es una excelente opción. Paquete uuid-ossp
tiene varios sabores. La versión 4 es entonces la mejor opción ya que tiene 122 bits aleatorios (los otros 6 se usan para identificar la versión). Puede crear una clave principal como esta:
id uuid PRIMARY KEY DEFAULT uuid_generate_v4()
y entonces nunca más tendrás que preocuparte por eso.
Ahora puede usar la función integrada gen_random_uuid()
para obtener un UUID aleatorio de la versión 4.