[Pgsql-ayuda] Claves primarias y Herencia
Pablo Dejuan
pdejuan@ucu.edu.uy
Tue, 08 Jul 2003 14:15:13 -0300
Estimados listeros:
Hola me encuentro con un problema:
Tengo una tabla V con atributos 'vnro' de tipo integer clave primaria y
'proveedor' de tipo varchar.
Luego creé una nueva tabla de la siguiente manera:
CREATE TABLE V_H (
contacto varchar(30)
) INHERITS V;
Luego hago un par de INSERT's en este orden
INSERT INTO V( vnro, proveedor) VALUES (11, 'del buceo');
INSERT INTO V_H(vnro, proveedor, contacto) VALUES (11, 'pepe y cia',
'pepe muleiro' );
y la siguiente consulta me devuelve:
SELECT * FROM V WHERE vnro=1;
vnro proveedor
1 'del buceo'
1 'pepe y cia'
Cuando le hice EXPLAIN me dice que hace una búsqueda secuencial de las
dos tablas, V y V_H, en lugar de acceder por el índice.
Realmente no entiendo,
1) ¿Por qué aceptó el valor 1 en el segundo insert?
2) ¿Por qué el select devuelve los dos valores? y ¿Por qué hace un
análisis secuencial?
Por último estoy usando la versión de peerDirect de postgresql 7.2.1;
Desde ya les agradezco.
Pablo Dejuan