Re: [pgsql-es-ayuda] constraints - índices

From: "Raul Andres Duque" <raulandresduque(at)hotmail(dot)com>
To: "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: [pgsql-es-ayuda] constraints - índices
Date: 2006-11-14 22:26:17
Message-ID: BAY104-DAV130240F4FB5B14C753FED9BAEB0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Gracias Alvaro por tus múltiples ayudas y comentarios.

No entendí muy bien la diferencia entre un índice y un método de acceso,
siempre los concideré como iguales. Mi duda es ... el hecho de definir un
constraint, que a su vez genera un índice, agiliza las consultas basadas en
ese índice??

Por ejemplo:
1. si tengo un UNIQUE o PRIMARY KEY por el campo "codigo" y realizo un
SELECT por ese campo, mi búsqueda es más rápida o se realiza secuencial?
para agilizarla TENGO que definir un btree o gist?
2. Un foreingkey es usado sólo para verificar la integridad referencial o
cuando lanzo una consulta que hace un join entre las dos tablas por los
mismo campos de mi foreingkey, es usado el índice creado por el foreingkey?

Una pregunta adicional: si ya no se debe usar el "hash", cual es su
equivalente?
Esto lo pregunto porque conceptualmente un hash es muy diferente de un
btree.

Gracias.

Atentamente,

RAUL DUQUE
Bogotá, Colombia

----- Original Message -----
From: "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>
To: "Raul Andres Duque" <raulandresduque(at)hotmail(dot)com>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Sent: Tuesday, November 14, 2006 5:13 PM
Subject: Re: [pgsql-es-ayuda] constraints - índices

> Raul Andres Duque escribió:
>> Una duda:
>>
>> Los constraint tales como Unique o Primary Key, definen "automáticamente"
>> métodos de acceso o debería definir cnstraints y a su vez métodos de
>> acceso
>> hash???
>
> Los constraints definen indices automaticamente. Estos indices siempre
> usan el metodo de acceso btree.
>
> Los indices hash no sirven para nada en Postgres. No los uses.
>
>> Los foreingkeys funcionan como métodos de acceso?
>
> Los "foreign keys" son "constraints". No tienen nada que ver con los
> metodos de acceso.
>
> Creo que te confundí más de lo que te ayudé antes con el asunto de los
> "métodos de acceso". Un método de acceso define la forma de un índice.
> Un índice no es un método de acceso. Una restricción puede ser
> implementada usando un índice, el cual tendrá algún método de acceso
> determinado. Es incorrecto (no tiene sentido) decir que una restricción
> define un método de acceso.
>
> --
> Alvaro Herrera
> http://www.CommandPrompt.com/
> PostgreSQL Replication, Consulting, Custom Development, 24x7 support
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Eliana Gutierrez 2006-11-14 22:48:52 Re: Store Procedure con parametros variables
Previous Message Alvaro Herrera 2006-11-14 22:19:01 Re: Store Procedure con parametros variables