|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : septembre 2007 Messages : 4 ![]() |
Bonjour,
J'effectue actuellement une migration oracle -> Sybase, J'ai actuellement un problème sur la requète oracle actuelle ci dessous que je dois convertir pour Sybase ( Adaptive Server Enterprise): Les trois tables sur lesquelles s'effectuent cette requete sont les suivantes TABLE EMPLACEMENTDATA ( EMPID numeric(10,0) IDENTITY, BOITE_BOITEID numeric(10,0) NULL, STATE numeric(18,0) NOT NULL, X numeric(18,0) NOT NULL, Y numeric(18,0) NOT NULL, CONTENTS numeric(18,0) NOT NULL, RESERVATION varchar(255) NULL, RESSOURCESTOCKEE_RESID numeric(10,0) NULL et TABLE RESSOURCE ( IDRESSOURCE numeric(10,0) IDENTITY, IDPTR numeric(10,0) NULL, DATECREATIONRESSOURCE datetime NULL, HEURECREATIONRESSOURCE datetime NULL, IDTYPERESSOURCE numeric(6,0) NULL, IDTYPECONDITIONNEMENT numeric(6,0) NULL, IDPATIENT numeric(6,0) NULL, IDACTION_MERE numeric(6,0) NULL, CODEBARRERESSOURCE varchar(13) NULL, QUANTITERESSOURCE numeric(6,0) NULL, IDUNITEQUANTITERESSOURCE numeric(6,0) NULL, QUALITERESSOURCE varchar(25) NULL, COMMENTAIRERESSOURCE varchar(255) NULL, CONFORMITERESSOURCE numeric(18,0) NOT NULL, IDEMPLACEMENTDATA numeric(10,0) NULL, NUMEROEXT1RESSOURCE varchar(25) NULL, NUMEROEXT2RESSOURCE varchar(25) NULL, NUMEROEXT3RESSOURCE varchar(25) NULL, ETATRESSOURCE varchar(20) NULL, IDDEVENIR numeric(6,0) NULL, TUMORALE char(1) NULL ) TABLE ACTIONELEMENTAIRE ( IDACTION numeric(6,0) IDENTITY, IDRESSOURCE numeric(10,0) NOT NULL, IDTYPEACTION numeric(6,0) NOT NULL, IDCOLLABORATEUR numeric(6,0) NULL, DATEACTION datetime NOT NULL, CODEBARREACTION varchar(13) NULL, NBELEMENTS numeric(18,0) NULL, QUANTITEUTILISEE numeric(18,0) NULL ) select lpad('L......................................................',4*(level-1)) || r.IDRESSOURCE as idRes, r.IDRESSOURCE as idRessource, p.NOMPATIENT||' '||p.PRENOMPATIENT as nomInd, level from RESSOURCE r LEFT OUTER JOIN PATIENT p ON p.IDPATIENT = r.IDPATIENT, RESSOURCE r2 LEFT OUTER JOIN EMPLACEMENTDATA ed ON ed.RESSOURCESTOCKEE_RESID = r2.IDRESSOURCE where r.IDRESSOURCE = r2.IDRESSOURCE and r.idpatient = {IDPATIENT} start with r.IDACTION_MERE is null connect by ( select ae.IDRESSOURCE from ACTIONELEMENTAIRE ae where ae.IDACTION= r.IDACTION_MERE) = prior r.IDRESSOURCE order siblings by r.IDRESSOURCE desc Quelqu'un habitué à ce genre de requête peut il m'aider, je suis complétement bloqué. Merci d'avance |
|
|
00
|
|
|
#2 |
|
Nouveau Membre du Club
![]() |
Je ne pense pas pouvoir t'aider (au vu de mes compétences ^^), mais si tu as un message d'erreur, je crois qu'il serait utile de nous en faire part, celà risque de nous aider.
P.S. : je dis que je ne peux pas t'aider parceque je ne connais que Sybase, MS Sql Server et MySql, et qu'en ce moment je fais une migration Sybase ASA => ASE (quoique je suis en stand-by là dessus, ouf!) P.S. 2 : Bonne chance! Sincèrement. |
|
00
|
|
|
#3 | ||
|
Nouveau Membre du Club
![]() Inscription : décembre 2002 Messages : 68 ![]() |
bonjour,
je ne connais pas oracle donc je ne vais pas pouvoir t'aider entièrement mais déjà te donner quelques trucs sur syb. la concaténation sur sybase se fait avec des +. les jointures sont exprimés dnas la clause where avec des = une jointure à droite =* une jointure à gauche *= voici un début de traduction par contre la notation {} sous oracle, je ne sias pas ce que ça veut dire de même pour start with. Code :
|
||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 056 ![]() |
bonjour,
vers quelle version d'ASE migrez-vous ? Plus la version est récente et plus il y a de chances de trouver des fonctions & syntaxes qui facilitent la vie.
__________________
Emmanuel T. |
|
|
00
|
|
|
#5 |
![]() ![]() |
Oui, cela dépend effectivement avant tout des versions de ASE (ex. pas de jointures ANSI avant la 12 !)
Si cela peut vous aider : Le LPAD() Oracle par exemple, c'est un Replicate() sous ASE : http://fadace.developpez.com/sgbdcmp/fonctions
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql Administrateur SAP Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com