#1 Fri 12 September 2008 00:09
- Pierre
- DesCartesPourUnMondeMeilleur
- Date d'inscription: 22 Sep 2005
- Messages: 1643
SQL Oracle et spool
Bonjour,
Je cherche à spooler cette requête :
set colsep ";";
set pages 0;
Set Tab OFF;
set newpage NONE;
set recsep off;
set feedback off;
set LINESIZE 250;
spool C:serelle.log;
Select op.GID ||';'|| op."Denomm" ||';'||'51'||substr(parc.IDENT,1,3) ||';'||
ltrim(substr(parc.IDENT,7,2),'0') ||';'|| ltrim(substr(parc.IDENT,9,4),'0') ||';'|| parc."propriet" ||';'||
parc."nat_pro" ||';'||parc."parc_par"||';'||parc."date_acq"||';'||SDO_GEOM.SDO_AREA (parc.GEOMETRY,0.005) / 1000000||';'
FROM
A_REIMS.U_OPFONC op ,
A_REIMS.PCI_PARC parc
WHERE
(SDO_RELATE(op.GEOMETRY,parc.GEOMETRY,'mask=contains querytype=WINDOW')='TRUE'
OR SDO_RELATE(op.GEOMETRY,parc.GEOMETRY,'mask=covers querytype=WINDOW')='TRUE'
OR SDO_RELATE(op.GEOMETRY,parc.GEOMETRY,'mask=overlapbdyintersect querytype=WINDOW')='TRUE'
OR SDO_RELATE(op.GEOMETRY,parc.GEOMETRY,'mask=equal querytype=WINDOW')='TRUE')
and round((SDO_GEOM.SDO_AREA(SDO_GEOM.SDO_INTERSECTION(parc.GEOMETRY,op.GEOMETRY, 0.005),0.005)/(SDO_GEOM.SDO_AREA(parc.GEOMETRY,0.005)))*100,3) 0
and (round((SDO_GEOM.SDO_AREA(SDO_GEOM.SDO_INTERSECTION(parc.GEOMETRY,op.GEOMETRY, 0.005),0.005)/(SDO_GEOM.SDO_AREA(parc.GEOMETRY,0.005)))*100,3) =100 OR
(SDO_GEOM.SDO_AREA(SDO_GEOM.SDO_INTERSECTION(parc.GEOMETRY,op.GEOMETRY, 0.005),0.005))/1000000 > ((SDO_GEOM.SDO_LENGTH(SDO_GEOM.SDO_INTERSECTION(parc.GEOMETRY,op.GEOMETRY,0.005),0.1)*0.4)/2000)) AND op.GID IN (SELECT A_REIMS.U_OPFONC.GID FROM A_REIMS.U_OPFONC WHERE A_REIMS.U_OPFONC.GID'139')
spool off;
Mais pas moyen d'obtenir le fichier. Avec la clôture de la base, le traitement s'arrête. Pourtant sans le spool dans SQLView, pas de problème pour l'obtenir, le résultat.
Une idée ?
D'avance, merci, merci,
Pierre Muckensturm
art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.
Hors ligne
#2 Fri 12 September 2008 11:48
- Cartosig
- Participant assidu
- Date d'inscription: 16 Oct 2006
- Messages: 222
Re: SQL Oracle et spool
Bonjour,
Vous entrez votre commande dans SQLView (que je ne connais pas) ou en ligne de commande ? (si vous etes sous windows..).
Je vous recommande déjà de vérifier votre syntaxe.
Code:
spool C:serelle.log;
A mon avis le spool ne risque pas de marcher sans : spool C:\serelle.log;
Sauf si votre environnement accepte l'absence du slash...
Hors ligne