Soit une vue que je défini sur une requete tres complexe ou il y a des
jointures tordues etc etc (apres tout c'est le but des vues).
Je me demandais une chose: Si je définis une "vue", c'est que je compte m'en
servir. Est-ce que le système de base données va préparer un peu le travail
apres que j'ai défini une "vue", ou bien il va attendre que je sollicite la
vue pour effectuer la jointure?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric Rossé
Le Fri, 15 Jun 2007 20:29:43 +0200, Mihamina (R12y) Rakotomandimby écrivait:
Je me demandais une chose: Si je définis une "vue", c'est que je compte m'en servir. Est-ce que le système de base données va préparer un peu le travail apres que j'ai défini une "vue", ou bien il va attendre que je sollicite la vue pour effectuer la jointure?
La requête qui se cache derrière une vue ne sera exécutée qu'au moment où cette vue sera sollicitée. Par contre, cette requête sera en principe "préparée". Le but d'une vue n'est pas d'avoir des données pré-extraites, mais de simplifier l'écriture des requêtes et/ou de limiter les droits d'accès.
Le Fri, 15 Jun 2007 20:29:43 +0200, Mihamina (R12y) Rakotomandimby écrivait:
Je me demandais une chose: Si je définis une "vue", c'est que je compte m'en
servir. Est-ce que le système de base données va préparer un peu le travail
apres que j'ai défini une "vue", ou bien il va attendre que je sollicite la
vue pour effectuer la jointure?
La requête qui se cache derrière une vue ne sera exécutée qu'au moment où
cette vue sera sollicitée. Par contre, cette requête sera en principe
"préparée". Le but d'une vue n'est pas d'avoir des données pré-extraites,
mais de simplifier l'écriture des requêtes et/ou de limiter les droits
d'accès.
Le Fri, 15 Jun 2007 20:29:43 +0200, Mihamina (R12y) Rakotomandimby écrivait:
Je me demandais une chose: Si je définis une "vue", c'est que je compte m'en servir. Est-ce que le système de base données va préparer un peu le travail apres que j'ai défini une "vue", ou bien il va attendre que je sollicite la vue pour effectuer la jointure?
La requête qui se cache derrière une vue ne sera exécutée qu'au moment où cette vue sera sollicitée. Par contre, cette requête sera en principe "préparée". Le but d'une vue n'est pas d'avoir des données pré-extraites, mais de simplifier l'écriture des requêtes et/ou de limiter les droits d'accès.
Jogo
Sur fr.comp.applications.sgbd, Mihamina (R12y) Rakotomandimby disait :
Est-ce que le système de base données va préparer un peu le travail apres que j'ai défini une "vue", ou bien il va attendre que je sollicite la vue pour effectuer la jointure?
J'utilise MySQL et PGSQL.
Avec PgSQL, aucun travail n'est effectué par le SGBDR avant la requête. Les vue sont implémentées en utilisant les RULEs, cad que les requêtes utilisant une vue sont réécrites pour utiliser les tables d'origines avant d'être passées au planificateur. Une description précise de ce fonctionnement se trouve dans la doc au §.34.2 chez moi.
-- There are only two kinds of tequila. Good and better.
Sur fr.comp.applications.sgbd, Mihamina (R12y) Rakotomandimby disait :
Est-ce que le système de base données va préparer un peu le travail
apres que j'ai défini une "vue", ou bien il va attendre que je
sollicite la vue pour effectuer la jointure?
J'utilise MySQL et PGSQL.
Avec PgSQL, aucun travail n'est effectué par le SGBDR avant la requête.
Les vue sont implémentées en utilisant les RULEs, cad que les requêtes
utilisant une vue sont réécrites pour utiliser les tables d'origines
avant d'être passées au planificateur. Une description précise de ce
fonctionnement se trouve dans la doc au §.34.2 chez moi.
--
There are only two kinds of tequila. Good and better.
Sur fr.comp.applications.sgbd, Mihamina (R12y) Rakotomandimby disait :
Est-ce que le système de base données va préparer un peu le travail apres que j'ai défini une "vue", ou bien il va attendre que je sollicite la vue pour effectuer la jointure?
J'utilise MySQL et PGSQL.
Avec PgSQL, aucun travail n'est effectué par le SGBDR avant la requête. Les vue sont implémentées en utilisant les RULEs, cad que les requêtes utilisant une vue sont réécrites pour utiliser les tables d'origines avant d'être passées au planificateur. Une description précise de ce fonctionnement se trouve dans la doc au §.34.2 chez moi.
-- There are only two kinds of tequila. Good and better.