Hello,
Je ne savais pas trop si je devais poster ceci dans la partie administration ou développement donc sorry si je ne suis pas au bon endroit.
La question est toute simple... Considérez le script suivant :
Le résultat de la dernière requête n'affiche pas la colonne VALUE2. Pourquoi ? La vue étant déclarée en SELECT *, je m'attendais à ce que tout soit pris.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 CREATE TABLE T_TEST_TST(ID INT IDENTITY(1,1) PRIMARY KEY, VALUE INT NOT NULL);GO CREATE VIEW V_TEST_TST AS SELECT * FROM dbo.T_TEST_TST; GO ALTER TABLE T_TEST_TST ADD VALUE2 INT NOT NULL; GO SELECT * FROM dbo.V_TEST_TST;
J'ai cru que le serveur traduisait l'étoile par le nom des colonnes existantes au moment de la création mais quand je scripte la vue, je retrouve bien l'étoile.
Je cherche donc la raison de ce comportement.
Merci d'avance.
EDIT : Précision
Ceci a été constaté sur 2008R2 (SP2) et testé/vérifié sur 2017(RTM).
Partager