|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre Expert
![]() Inscription : octobre 2007 Messages : 3 938 ![]() |
J'ai un peu chipoté pour trouver, j'ai meme lu des post qui disaient que ce n'etait pas possible.
Donc puisque ca marche quand meme et que ce n'est pas evident (a mon sens) j'illustre, si ca peut servir à d'autres Code :
__________________
« Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain) |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() |
Je doute que çà marche avec cette indentation
![]() Ok je sors...
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
|
|
01
|
|
|
#3 | |
|
Membre Expert
![]() Inscription : octobre 2007 Messages : 3 938 ![]() |
Citation:
Deuxièmement : sur quoi te base-tu et qu'est ce qui précisement te permet de dire que ca ne marche pas ?
__________________
« Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain) |
|
|
|
00
|
|
|
#4 |
![]() ![]() ![]() David BARBARINExpert SQL Server Inscription : août 2005 Messages : 3 723 ![]() |
Pourquoi ceci ne serait il pas possible ?
Vous pouvez tout à fait mettre un alias dans la clause UPDATE qui fait référence à la table dans la clause FROM ++ |
|
00
|
|
|
#5 | |
|
Membre Expert
![]() |
Citation:
Je vous taquinez juste sur votre indentation qui n'étais pas super super lisible mais bon on peut plus rigoler un peu...
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
|
|
|
00
|
|
|
#6 | |
|
Membre Expert
![]() Inscription : octobre 2007 Messages : 3 938 ![]() |
Troll detected !Citation:
En dehors de cette digression .... Merci Mikedavem tu a raison mais n'etant pas expert en syntaxe SQL j'avais avant tout cherché sur google et j'étais tombé sur des post spécifiant que Sql Server n'acceptait pas cette syntaxe pour un Update. J'ai quand meme essayé et je suis tres heureux que ca fonctionne.
__________________
« Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain) |
|
|
|
00
|
|
|
#7 | |
|
Membre Expert
![]() |
J'ai dis que je plaisantais, pas que je me tordais de rire malheureusement...
[Mode Rattrapage ON] Citation:
[Mode Rattrapage OFF] J'en profites toutefois pour sensibiliser sur les "bonnes pratiques" concernant l'indentation des requêtes via ce lien vers un article de SQLPRO: http://sqlpro.developpez.com/cours/standards/ Et blague mis à part cette fois-ci, le respect de ces règles permet une relecture plus aisée des requêtes surtout quand elles deviennent compliquées (ce qui n'est pas le cas du cas présent). Sans rancune olibara et merci pour votre contribution...
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Inscription : octobre 2007 Messages : 3 938 ![]() |
Tout a fait d'accord avec les regles d'indentation, je suis moi meme maniaque de la lisibilité dans des language comme C#, C++ etc
Pour SQL j'ai meme ecrit un petit formatteur qui permet de remettre en forme le desordre systématiquement engendré par SSMS et accessoirement generer la requete sous forme de string verbatim ou de stringbuilder en C# A ce niveau je voulais précisément souligner les resultat deplorable et imbuvables générés pas SSMS. Et si par malheur on repasse une jolie requete bien formattée dans SSMS elle en ressort plus que chiffonée C'est la raison pour laquelle le resultat de mes test fonctionnel tout fraichement pondu souffrait encore de quelques distorsions meme apres un passage d'urgence aux premiers soins Donc s'il y a une pierre a jeter sur le sujet, SSMS pourait généreusement hériter du premier pavé !
__________________
« Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain) |
|
|
00
|
|
|
#9 |
![]() ![]() |
Le meilleur outil de formatage des requêtes reste la barre d'espace !
__________________
Email : http://scr.im/waldar |
|
00
|
|
|
#10 |
|
Membre Expert
![]() |
olibara->C'est sûr que je ne peux m'empecher des CTRL+E D dans SSMS... sans succès malheureusement
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir. |
|
|
00
|
|
|
#11 | ||||
|
Membre Expert
![]() ![]() Inscription : janvier 2010 Messages : 1 084 ![]() |
Je peux me tromper, mais il me semble que cette syntaxe n'est acceptée par SQL Server que depuis la version 2008 !
on parle bien de Code SQL :
Et non pas simplement de Code SQL :
C'est pourquoi Olibara, tu as pu lire que cette syntaxe n'était pas acceptée... |
||||
|
|
00
|
|
|
#12 |
![]() ![]() |
En 2005 les mises à jour en utilisant l'alias fonctionnent.
__________________
Email : http://scr.im/waldar |
|
00
|
|
|
#13 |
![]() ![]() ![]() David BARBARINExpert SQL Server Inscription : août 2005 Messages : 3 723 ![]() |
Je confirme après avoir regardé la documentation.
++ |
|
00
|
|
|
#14 | ||||
|
Membre Expert
![]() ![]() Inscription : janvier 2010 Messages : 1 084 ![]() |
Laquelle est quand même facétieuse :
SQL Server 2005 : Citation:
Citation:
Citation:
Citation:
|
||||
|
|
00
|
|
|
#15 | ||
![]() ![]() ![]() Nicolas SouquetAdministrateur de base de données Inscription : janvier 2005 Messages : 4 667 ![]() |
Comme de toute façon une modification de données ne peut se faire que sur une table à la fois, l'alias dans l'UPDATE est inutile dans ton cas.
Dans ta requête le préfixe UU. est aussi inutile, pour la même raison. Il devient utile quand on réalise une auto-jointure (FROM uneTable JOIN uneTable), car dans ce cas SQL Server ne sait pas quelle table il doit mettre à jour suivant le prédicat de jointure et les éventuels filtres Donc on peut écrire, proprement indenté :Code :
__________________
En bases de données relationnelles SQL, il n'y a ni tableaux, ni enregistrements, ni champs: il y a des tables, des lignes et des colonnes. Blog | Profil| Consulter ou télécharger les fichiers d'aide de SQL Server, des versions 2000 à 2012 |
||
|
00
|
|
|
#16 | ||
![]() ![]() |
Les goûts et les couleurs... De mon côté c'est tout le contraire d'Elsuket.
Même si on ne peut mettre à jour qu'une table à la fois, je considère dès lors qu'il y a plus d'une table dans le FROM qu'il faut explicitement nommer tables et colonnes. Ma table ayant reçu un alias, je préfère utiliser ce dernier. Bien entendu, ça ne change rien en terme d'exécution. Code :
__________________
Email : http://scr.im/waldar |
||
|
10
|
|
|
#17 |
|
Membre Expert
![]() Inscription : octobre 2007 Messages : 3 938 ![]() |
Pour conclure j'ai beaucoup d'estime les compétences et l'aide apporté par Elsuket et de tout le monde en général
Pour la forme du cas present j'adhere tout a fait aux remarques de waldar, je prefere son indentation et j'aime autant nommer explicitement la table, ca simplifie la lecture et la compréhension du code
__________________
« Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain) |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com