[SQL 7]

[SQL 7] - Programmation

Marsh Posté le 30-01-2001 à 08:16:49    

bonjour
je cherche à connaître l'intérèt d'utiliser une vue plutôt qu'un select sur plusieurs tables
le select est en local et la vue est sur le serveur, non ?
d'autres différence ?

Reply

Marsh Posté le 30-01-2001 à 08:16:49   

Reply

Marsh Posté le 30-01-2001 à 08:32:11    

Cela dépends des données mais si la vue que tu crées a une certaine validité dans le temps, et qu'elle n'est pas détruite en fin de traitement elle peut être réutilisée lors d'un autre accès minimisant ainsi l'impact de la requête de jointure initiale.

Reply

Marsh Posté le 30-01-2001 à 08:38:01    

il s'agit d'une base de données avec 6 petites tables :
clients, BL, Factures ... simples quoi !
 
une vue pour lier la table client à une autre
de manière permanentess!
 
Si je comprend bien, la vue est mise à jour en temps réel dans la base de données ?
le Select en local ne serait qu'une image à un temps donné, dans un recordset, c'est ça ?

Reply

Marsh Posté le 30-01-2001 à 08:53:52    

La mise à jour de la vue n'est pas automatique à ma connaissance. Cependant tu devrais pouvoir la maintenir à jour lors de modifications sur tes tables grâce à un trigger. En fait la vue apportera un gain de performance uniquement si dans le cadre de ton application il y a plus d'accès en lecture à cette vue que de modifications sur les tables la constituant.

Reply

Marsh Posté le 30-01-2001 à 09:06:09    

Je me trompe peux-etre, mais il me semble que c'est le contraire
La vue n'est vraiment resolue que lorsque l'on fait un select, elle est donc toujours a jour... En fait c'est surtout un moyen simple pour faire des select imbriques...
 
Source A Guide to The SQL Standard, C.J. Date, Hugh Darwen, ADDISON-WESLEY

Reply

Marsh Posté le 30-01-2001 à 09:08:38    

Oups je me serais trompé ? si c'est le cas désolé...  :jap:
 
Visiblement au vu de la doc de SQL7 j'ai dit une bétise :(

 

--Message édité par Guru--

Reply

Marsh Posté le 30-01-2001 à 09:10:56    

pas grave je suis en train d'apprendre
je lis un ouvrage dessus en même temps
on se complète ... :D
 
les vues sont considérées comme des objetsssde la base

 

--Message édité par Hepil--

Reply

Marsh Posté le 30-01-2001 à 09:22:12    

En fait je travaille sous vb et désire utiliser une base SQL 7
j'ai deux possibilités pour les vues :
les construire sous sql7 ou sous VB
 
elles seront enregistrées où ?

Reply

Marsh Posté le 30-01-2001 à 09:57:42    

Salut,
 
Voici mon avis :
L'interet des vues est multiple. En voici plusieurs.
- Les vues sont deja compilées. En consequence, il y a un gain de performance par rapport a une requete envoyée depuis le client d'autant plus s'il s'agit de vues complexes ( plusieurs jointures, etc...)
 
-Si la vue complexe est bien construite, la vue permet une requete relativement cote client (du style Select * from Vue) et non une requete du style (Select A.toto, B.titi, c.tutu From A inner join B on .......). Il y a un avantage au iveau du cout reseau de la requete ( chez moi, un calcul a montre un gain de caractere de plus de 70%)
 
-Pour la securite, les vues permettent de ne montrer que les données que l'on souhaite. Dans certains cas , on ne desire passsdonner un acces en lecture qu'a certaine colonne d'une table.
Ceci se fait avec une vue.
 
-Pour une migration vers SQL 2000, c'est plus interessant de penser deja en therme de vue pour les vues partitionnées entre plusieurs serveurs.
 
J'espere que ces informations vous seront utiles.
 On peux toujours en discuter.
 
A+


---------------
*******************************************
Reply

Marsh Posté le 30-01-2001 à 10:02:32    

je pense avoir les réponses
merciss
j'y réfléchie ...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed