|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
![]() ![]() |
Hello !
Sur le Designer utilisant une DB Oracle, on peut créer une condition du genre : maTable.monChamp(+) = "valeur" Comment puis-je faire l'équivalent avec une DB MS SQL Server ? Si c'est possible... Thanks... |
|
|
00
|
|
|
#2 |
|
Membre actif
![]() Chef de projet NTIC Inscription : octobre 2011 Messages : 136 ![]() |
Bonjour,
Oui c'est tout à fait possible, il faut pour cela modifier un paramètre de l'univers ANSI92=YES il me semble que cela devrait suffire (en tout cas ça à fonctionner pour moi) En fait cela va ré-écrire les requêtes SQL avec du left outer join ou du right outer join. Si ça ne marche pas, quelle est la version de sql serveur? bon courage |
|
|
00
|
|
|
#3 |
![]() ![]() |
C'est avec beaucoup d'espoir que j'ai tenté ta solution, mais malheureusement il n'y a aucun changement... il ne reconnait toujours pas le (+)...
Si je te dis que la version de SQL Server c'est : 10.50.1790... Ca te parle ??? Apparemment c'est la "2008 R2 + Q2494086"... |
|
|
00
|
|
|
#4 | |
|
Membre chevronné
![]() ![]() Développeur décisionnel Inscription : juin 2008 Messages : 510 ![]() |
Citation:
Le fait de passer en ANSI92=Yes permet de ne plus afficher ce "+" justement. Si tu le met manuellement, il ne va pas aimer. Par contre, si tu fais ta jointure normale, et que tu coches "Jointure externe", ça devrait être bon je pense. A propos du "+" pour les jointures externes, il est déconseillé de l'utilisé, il n'est plus au normes SQL à ce qu'on m'a dit. Il faut utiliser les LEFT/ RIGHT OUTER JOIN... |
|
|
00
|
|
|
#5 |
![]() ![]() |
Sauf que ce n'est pas une jointure que je souhaite faire... mais une condition...
Condition : Where = MaTable.MonChamp(+) = 'valeur' Ceci permet de filtre sur la valeur + les lignes qui n'existe pas dans la table MaTable... Avec une DB Oracle, en cochant "jointure externe", il rajoute ce "+"... Donc çà doit être encore permis avec Oracle... |
|
|
00
|
|
|
#6 |
|
Membre actif
![]() Chef de projet NTIC Inscription : octobre 2011 Messages : 136 ![]() |
oui il ne faut pas rajouter ce (+) qui n'est plus un paramètre reconnu.
l'autre solution si tu veux absolument utiliser ce paramètre et de changer une variable sur ton sql server pour le passer en interprétation sql server 2000 mais je pense que tu vas y perdre au change... Tu as essayé d'enlever le (+) mais en laissant MaTable.MonChamp = 'valeur' ? Je vais peut être dire une ânerie je ne connais pas ton modèle mais pourquoi tu ne fais pas juste un filtre ? je ne vois pas trop la jointure là... pour moi il s'agit juste d'une condition de filtrage |
|
|
00
|
|
|
#7 |
![]() ![]() |
C'est une condition == filtre... Ce n'est pas une jointure...
En gros çà me permet de récupérer uniquement les lignes correspondant à ma valeur plus les lignes sans correspondance dans la table... Celles qui ont une valeur correspondante dans la table mais pas la valeur souhaitée sont rejetées.. Dans tous les cas vive Oracle... |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com