Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/10/2011, 10h58   #1
Membre confirmé
 
Homme
Développeur .NET
Inscription : septembre 2003
Messages : 377
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : septembre 2003
Messages : 377
Points : 210
Points : 210
Par défaut SQL serveur 2008, TABLE.*

Bonjour,

Pour des raisons techniques nous venons seulement de passer à SQL2008 et j'ai un petit problème sur les vues.

Avant sur SQL2000 je pouvais faire un truc du genre
Code :
SELECT MaTable.* FROM MaTable
Si entre temps un champ s'ajoute il est automatiquement pris dans la vue.

Sauf que maintenant avec SQL2008 quand je valide la vue il me rapatrie tous les champs concernés ce qui donne
Code :
SELECT MaTable.Champ1, MaTable.Champ2, MaTable.Champ3 FROM MaTable
De ce fait je perds le coté dynamique en cas de nouveau champ.

Est-ce un paramétrage de SQL2008 ? peut on le contourner ?


merci
ricil78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 11h03   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 959
Points : 17 791
Points : 17 791
C'est faux...
Exemple :
Code :
1
2
3
4
CREATE VIEW V
AS 
SELECT *
FROM   INFORMATION_SCHEMA.COLUMNS
Faites ensuite clic droit sur la vue, générer un script de création de la vue =>

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
USE MaBase
GO
 
/****** Object:  View [dbo].[V]    Script Date: 10/27/2011 11:02:19 ******/
SET ANSI_NULLS ON
GO
 
SET QUOTED_IDENTIFIER ON
GO
 
CREATE VIEW [dbo].[V]
AS 
SELECT *
FROM   INFORMATION_SCHEMA.COLUMNS
GO

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 11h10   #3
Membre confirmé
 
Homme
Développeur .NET
Inscription : septembre 2003
Messages : 377
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : septembre 2003
Messages : 377
Points : 210
Points : 210
merci pour ta réponse.

Par contre ne dit pas c'est faux car j'ai passé l'age de posté sur des problèmes que je ne rencontre pas !
Quand tu fait ta vue directement dans le management studio en création j'ai le problème.

Par contre je veux bien faire autrement en regardant ta soluce
ricil78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 12h35   #4
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 959
Points : 17 791
Points : 17 791
Faire des requêtes graphiquement est le plus sur moyen de faire n'importe quoi !
En SQL, on utilise le langage SQL, comme ça on sait ce que l'on fait !

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 27/10/2011, 12h48   #5
Membre confirmé
 
Homme
Développeur .NET
Inscription : septembre 2003
Messages : 377
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : septembre 2003
Messages : 377
Points : 210
Points : 210
Je suis assez d'accord avec toi.
Mais même si je la tape à la main sans passer par un script, il y a toujours le problème qu'il remplace le * par tous les champs.

D'ailleurs j'ai tester ta solution qui fonctionne bien et je n'en doutais pas.

Par contre c'est quand même un problème car il faut passer à chaque fois par le script c'est assez pénible, surtout quand on a juste une mini modif à faire.
C'est tellement plus pratique de passer par l'éditeur !
ricil78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 14h39   #6
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 523
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 523
Points : 3 972
Points : 3 972
Citation:
Envoyé par ricil78 Voir le message
Par contre c'est quand même un problème car il faut passer à chaque fois par le script c'est assez pénible, surtout quand on a juste une mini modif à faire.
C'est tellement plus pratique de passer par l'éditeur !
Euh ??? Ça dépend de la complexité de la requête de ta vue...
Personnellement, je préfère avoir le plus de maitrise sur les modifications que j'apporte et en maitriser les effets et de ce point de vue, le select * est à prohiber dans une vue.
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 27/10/2011, 15h01   #7
Membre confirmé
 
Homme
Développeur .NET
Inscription : septembre 2003
Messages : 377
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : septembre 2003
Messages : 377
Points : 210
Points : 210
Oui, comme précisé dans le 1er poste j'ai une structure de table variable et cela directement depuis l'application utilisateur sans intervention de ma part.

Et la vue doit reprendre les nouveaux champs, et la solution la plus rapide et le Table.*

Une solution pour éviter la rapatriement des champs depuis la partie graphique ?
ricil78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 15h18   #8
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 523
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 523
Points : 3 972
Points : 3 972
Citation:
Envoyé par ricil78 Voir le message
Oui, comme précisé dans le 1er poste j'ai une structure de table variable et cela directement depuis l'application utilisateur sans intervention de ma part.
Ça sent le mauvais bricolage...

Citation:
Envoyé par ricil78 Voir le message
Une solution pour éviter la rapatriement des champs depuis la partie graphique ?
Ne pas utiliser la partie graphique !
Sinon, tu peux jeter une œil dans les options, il y a pas mal de paramétrages possibles et éventuellement le bon. Je ne peux en dire plus, je ne me sers jamais de cette chose. Les rares fois où je l'ai fait, le bousin était rapidement dépassé...
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 15h25   #9
Membre confirmé
 
Homme
Développeur .NET
Inscription : septembre 2003
Messages : 377
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : septembre 2003
Messages : 377
Points : 210
Points : 210
Pour info le "bricolage" comme tu le nommes viens de SAGE (6,3 millions de clients dans le monde entier) perso j'aimerais bien bricoler comme eux !
ricil78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 16h04   #10
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 523
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 523
Points : 3 972
Points : 3 972
Citation:
Envoyé par ricil78 Voir le message
Pour info le "bricolage" comme tu le nommes viens de SAGE (6,3 millions de clients dans le monde entier) perso j'aimerais bien bricoler comme eux !
Ouais, enfin, il faut savoir relativiser aussi... SAP a stocké un moment des booléens dans des varchar(max)...
__________________
les règles du forum - mode d'emploi du forum
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs.
(Rappel : "ça ne marche pas" n'est pas un message d'erreur)
JE NE RÉPONDS PAS aux questions techniques par message privé.
Écrire en français sur un forum est une marque minimale de respect.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 16h14   #11
Membre confirmé
 
Homme
Développeur .NET
Inscription : septembre 2003
Messages : 377
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : septembre 2003
Messages : 377
Points : 210
Points : 210
Exacte !
En tout cas j'ai pas le choix et je dois faire avec !
ricil78 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h39.


 
 
 
 
Partenaires

Hébergement Web