Bonjour à tous,
J'ai besoin d'une clarification sur la mise à jour des vues(j'utilise SQL Server 2000).
Créons une table et sa vue associée :
Essayons maintenant d'inserer une ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 CREATE TABLE T_INT (I INT) GO CREATE VIEW V_INT AS SELECT I, I+1 AS J FROM T_INT GO
Ceci provoque l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 INSERT INTO V_INT(I) VALUES(1)
Serveur*: Msg 4406, Niveau 16, État 1, Ligne 1
Impossible de mettre à jour ou d'insérer une vue ou une fonction 'V_INT' car elles contiennent un champ d'une dérivée ou d'une constante.
Par contre la mise à jour fonctionne ?? :
Si quelqu'un peut m'expliquer ce mystère .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 insert into T_INT(I) values(1) GO update V_INT SET I=2 WHERE I=1
Merci d'avance
Partager