sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Clave principal con orden ASC o DESC?

Creo que sería razonable hacer eso, ya que semánticamente un índice en orden ascendente o descendente es lo mismo, pero PostgreSQL no lo admite. No hay forma de controlar el orden del índice de un índice que se crea automáticamente para respaldar una clave principal.

PostgreSQL no le permitirá crear uno creando el índice manualmente como UNIQUE índice con DESC ordenar y luego crear una PRIMARY KEY declarada restricción usando ALTER TABLE ... ADD CONSTRAINT ... PRIMARY KEY USING INDEX ... . Fallará con:

ERROR:  index "foopk" does not have default sorting behavior

No sé por qué Pg requiere esto. Si busca el código fuente del error anterior, probablemente encontrará un comentario adecuado.

Puede obtener PRIMARY KEY -comportamiento similar sin los metadatos de restricción simplemente creando el índice único por separado. Eso podría estar bien para ti.