j'ai bien compris l'intérêt des vues en tant que simplificationd e l'écriture
de requêtes, en tant que possibilité de "masquer" les relations entre les
tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis à
vis des requêtes action.
En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt en
termes d'optimisation.
Si je fais dans mon programme
"select a.lib, b.lib from a inner join b on a.pk = b.fk"
par rapport à
"create view v as select a.lib as lib_a, b.lib as lib_b from a inner join b
on a.pk = b.fk"
puis "select lib_a, lib_b from v"
Existe-t'il une différence d'interprétation au niveau du serveur ? La
requête est-elle optimisée d'une façon ou d'une autre, et si oui comment ??
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
Fred BROUARD
YTSE a écrit:
j'ai bien compris l'intérêt des vues en tant que simplificationd e l'écriture de requêtes, en tant que possibilité de "masquer" les relations entre les tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis à vis des requêtes action.
En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt en termes d'optimisation.
L'optimisation n'est pas un concept SQL. C'est un problème physique auquel SQL est totalement étranger.
Si je fais dans mon programme "select a.lib, b.lib from a inner join b on a.pk = b.fk" par rapport à "create view v as select a.lib as lib_a, b.lib as lib_b from a inner join b on a.pk = b.fk" puis "select lib_a, lib_b from v"
Existe-t'il une différence d'interprétation au niveau du serveur ? La requête est-elle optimisée d'une façon ou d'une autre, et si oui comment ??
De manière très générale l'imbrication de vue rend l'optimisation moindre. En revanche entre une vue et la requête directe, aucune différence d'optimisation.
A +
Merci
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ************************ www.datasapiens.com *************************
YTSE a écrit:
j'ai bien compris l'intérêt des vues en tant que simplificationd e l'écriture
de requêtes, en tant que possibilité de "masquer" les relations entre les
tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis à
vis des requêtes action.
En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt en
termes d'optimisation.
L'optimisation n'est pas un concept SQL. C'est un problème physique auquel SQL
est totalement étranger.
Si je fais dans mon programme
"select a.lib, b.lib from a inner join b on a.pk = b.fk"
par rapport à
"create view v as select a.lib as lib_a, b.lib as lib_b from a inner join b
on a.pk = b.fk"
puis "select lib_a, lib_b from v"
Existe-t'il une différence d'interprétation au niveau du serveur ? La
requête est-elle optimisée d'une façon ou d'une autre, et si oui comment ??
De manière très générale l'imbrication de vue rend l'optimisation moindre. En
revanche entre une vue et la requête directe, aucune différence d'optimisation.
A +
Merci
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
j'ai bien compris l'intérêt des vues en tant que simplificationd e l'écriture de requêtes, en tant que possibilité de "masquer" les relations entre les tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis à vis des requêtes action.
En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt en termes d'optimisation.
L'optimisation n'est pas un concept SQL. C'est un problème physique auquel SQL est totalement étranger.
Si je fais dans mon programme "select a.lib, b.lib from a inner join b on a.pk = b.fk" par rapport à "create view v as select a.lib as lib_a, b.lib as lib_b from a inner join b on a.pk = b.fk" puis "select lib_a, lib_b from v"
Existe-t'il une différence d'interprétation au niveau du serveur ? La requête est-elle optimisée d'une façon ou d'une autre, et si oui comment ??
De manière très générale l'imbrication de vue rend l'optimisation moindre. En revanche entre une vue et la requête directe, aucune différence d'optimisation.
A +
Merci
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ************************ www.datasapiens.com *************************
YTSE
OKIDOKI c'est donc ce que je pensais, merci pur la rapidité de votre réponse.
"Fred BROUARD" a écrit :
YTSE a écrit: > j'ai bien compris l'intérêt des vues en tant que simplificationd e l'écriture > de requêtes, en tant que possibilité de "masquer" les relations entre les > tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis à > vis des requêtes action. > > En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt en > termes d'optimisation.
L'optimisation n'est pas un concept SQL. C'est un problème physique auquel SQL est totalement étranger.
> > Si je fais dans mon programme > "select a.lib, b.lib from a inner join b on a.pk = b.fk" > par rapport à > "create view v as select a.lib as lib_a, b.lib as lib_b from a inner join b > on a.pk = b.fk" > puis "select lib_a, lib_b from v" > > Existe-t'il une différence d'interprétation au niveau du serveur ? La > requête est-elle optimisée d'une façon ou d'une autre, et si oui comment ??
De manière très générale l'imbrication de vue rend l'optimisation moindre. En revanche entre une vue et la requête directe, aucune différence d'optimisation.
A +
> > Merci
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ************************ www.datasapiens.com *************************
OKIDOKI c'est donc ce que je pensais, merci pur la rapidité de votre réponse.
"Fred BROUARD" a écrit :
YTSE a écrit:
> j'ai bien compris l'intérêt des vues en tant que simplificationd e l'écriture
> de requêtes, en tant que possibilité de "masquer" les relations entre les
> tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis à
> vis des requêtes action.
>
> En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt en
> termes d'optimisation.
L'optimisation n'est pas un concept SQL. C'est un problème physique auquel SQL
est totalement étranger.
>
> Si je fais dans mon programme
> "select a.lib, b.lib from a inner join b on a.pk = b.fk"
> par rapport à
> "create view v as select a.lib as lib_a, b.lib as lib_b from a inner join b
> on a.pk = b.fk"
> puis "select lib_a, lib_b from v"
>
> Existe-t'il une différence d'interprétation au niveau du serveur ? La
> requête est-elle optimisée d'une façon ou d'une autre, et si oui comment ??
De manière très générale l'imbrication de vue rend l'optimisation moindre. En
revanche entre une vue et la requête directe, aucune différence d'optimisation.
A +
>
> Merci
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
OKIDOKI c'est donc ce que je pensais, merci pur la rapidité de votre réponse.
"Fred BROUARD" a écrit :
YTSE a écrit: > j'ai bien compris l'intérêt des vues en tant que simplificationd e l'écriture > de requêtes, en tant que possibilité de "masquer" les relations entre les > tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis à > vis des requêtes action. > > En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt en > termes d'optimisation.
L'optimisation n'est pas un concept SQL. C'est un problème physique auquel SQL est totalement étranger.
> > Si je fais dans mon programme > "select a.lib, b.lib from a inner join b on a.pk = b.fk" > par rapport à > "create view v as select a.lib as lib_a, b.lib as lib_b from a inner join b > on a.pk = b.fk" > puis "select lib_a, lib_b from v" > > Existe-t'il une différence d'interprétation au niveau du serveur ? La > requête est-elle optimisée d'une façon ou d'une autre, et si oui comment ??
De manière très générale l'imbrication de vue rend l'optimisation moindre. En revanche entre une vue et la requête directe, aucune différence d'optimisation.
A +
> > Merci
-- Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ************************ www.datasapiens.com *************************
Patrice
Un cas particulier concerne les vues "indexées" nouvelles en 2000. Dans ce cas la vue est "matérialisée" (les lignes sont recopiées) ce qui doit donc améliorer la lecture et pénaliser les mises à jour...
Cf la doc en ligne pour les détails dont je ne me souviens pas...
-- Patrice
"YTSE" a écrit dans le message de news:
j'ai bien compris l'intérêt des vues en tant que simplificationd e
l'écriture
de requêtes, en tant que possibilité de "masquer" les relations entre les tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis
à
vis des requêtes action.
En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt
en
termes d'optimisation.
Si je fais dans mon programme "select a.lib, b.lib from a inner join b on a.pk = b.fk" par rapport à "create view v as select a.lib as lib_a, b.lib as lib_b from a inner join
b
on a.pk = b.fk" puis "select lib_a, lib_b from v"
Existe-t'il une différence d'interprétation au niveau du serveur ? La requête est-elle optimisée d'une façon ou d'une autre, et si oui comment
??
Merci
Un cas particulier concerne les vues "indexées" nouvelles en 2000. Dans ce
cas la vue est "matérialisée" (les lignes sont recopiées) ce qui doit donc
améliorer la lecture et pénaliser les mises à jour...
Cf la doc en ligne pour les détails dont je ne me souviens pas...
--
Patrice
"YTSE" <YTSE@discussions.microsoft.com> a écrit dans le message de
news:278E641E-05F2-4FA9-B7C6-8F9559748D4F@microsoft.com...
j'ai bien compris l'intérêt des vues en tant que simplificationd e
l'écriture
de requêtes, en tant que possibilité de "masquer" les relations entre les
tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis
à
vis des requêtes action.
En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt
en
termes d'optimisation.
Si je fais dans mon programme
"select a.lib, b.lib from a inner join b on a.pk = b.fk"
par rapport à
"create view v as select a.lib as lib_a, b.lib as lib_b from a inner join
b
on a.pk = b.fk"
puis "select lib_a, lib_b from v"
Existe-t'il une différence d'interprétation au niveau du serveur ? La
requête est-elle optimisée d'une façon ou d'une autre, et si oui comment
Un cas particulier concerne les vues "indexées" nouvelles en 2000. Dans ce cas la vue est "matérialisée" (les lignes sont recopiées) ce qui doit donc améliorer la lecture et pénaliser les mises à jour...
Cf la doc en ligne pour les détails dont je ne me souviens pas...
-- Patrice
"YTSE" a écrit dans le message de news:
j'ai bien compris l'intérêt des vues en tant que simplificationd e
l'écriture
de requêtes, en tant que possibilité de "masquer" les relations entre les tables pour l'utilisateur final de la vue, mais aussi pour la sécurité vis
à
vis des requêtes action.
En revanche, je n'arrive pas à déterminer si les vues ont un réel intérêt
en
termes d'optimisation.
Si je fais dans mon programme "select a.lib, b.lib from a inner join b on a.pk = b.fk" par rapport à "create view v as select a.lib as lib_a, b.lib as lib_b from a inner join
b
on a.pk = b.fk" puis "select lib_a, lib_b from v"
Existe-t'il une différence d'interprétation au niveau du serveur ? La requête est-elle optimisée d'une façon ou d'une autre, et si oui comment