<br><font size=2 face="sans-serif">Hello List</font>
<br>
<br><font size=2 face="sans-serif">I'm using Mapserer with Oracle/Java-Mapscript
and migrating my app from Mapserver 4.x to Mapserer 5.x</font>
<br><font size=2 face="sans-serif">and have a problem with layerObj.queryByAttributes.</font>
<br>
<br><font size=2 face="sans-serif">I used to query features with code like
this:</font>
<br><font size=2 face="Courier New">&nbsp; alayerObj.queryByAttributes(aMapObj,
&quot;ID&quot;, &quot;ID=4711&quot;, mapscript.</font><font size=2 color=#0021bf face="Courier New"><i>MS_SINGLE</i></font><font size=2 face="Courier New">);</font>
<br><font size=2 face="sans-serif">In Mapserver 5 this code &nbsp;results
in an Mapserver-Error-Message stating, that the &quot;SQL command is not
properly ended&quot;.</font>
<br>
<br><font size=2 face="sans-serif">The Mapserver-generated SQL-Command
includes a Where-Clause of the form &quot;ID = ID = 4711&quot;.</font>
<br>
<br><font size=2 face="sans-serif">I had a look in maporaclespatial.c function
&quot;osFilteritem&quot;.</font>
<br><font size=2 face="sans-serif">Follwing code seems to produce this
Where-Clause:</font>
<br><font size=2 face="Courier New">&nbsp;if (layer-&gt;filteritem != NULL)</font>
<br><font size=2 face="Courier New">&nbsp;{</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp;sprintf (query_str + strlen(query_str),
&quot; %s = &quot;, layer-&gt;filteritem);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp;//snprintf (query_str
+ strlen(query_str), &quot; %s = &quot;, layer-&gt;filteritem);</font>
<br><font size=2 face="Courier New">&nbsp;}</font>
<br>
<br><font size=2 face="sans-serif">Changing my Java-Code to </font>
<br><font size=2 face="Courier New">&nbsp; alayerObj.queryByAttributes(aMapObj,
&quot;ID&quot;, &quot;4711&quot;, mapscript.</font><font size=2 color=#0021bf face="Courier New"><i>MS_SINGLE</i></font><font size=2 face="Courier New">);</font>
<br><font size=2 face="sans-serif">solves the problem.</font>
<br>
<br><font size=2 face="sans-serif">Questions:</font>
<br><font size=2 face="sans-serif">* Is this a bug in Mapserver or a new
feature? &nbsp;</font>
<br><font size=2 face="sans-serif">* Is this really a change in Mapserver
5.0?</font>
<br><font size=2 face="sans-serif">* Shall I rather change my Java-Code
or shall I patch Mapserver/ maporaclespatial.c/osFilteritem?</font>
<br><font size=2 face="sans-serif">&nbsp; &nbsp;Would the changed Java-Code
work with the Oracle-driver only?</font>
<br>
<br><font size=2 face="sans-serif">Greetings from Aachen/Germany</font>
<br><font size=2 face="sans-serif">Benedikt Rothe</font>
<br>
<br><font size=2 face="Courier New"><b>Attachement &quot;Error-Message&quot;:
</b></font><font size=2 face="Arial">(Added Newlines) </font>
<br><font size=2 face="Arial">msOracleSpatialLayerWhichShapes(): OracleSpatial
error. Error: ORA-00933: SQL command not properly ended </font>
<br><font size=2 face="Arial">&nbsp;. Query statement: </font>
<br><font size=2 face="Arial">SELECT </font>
<br><font size=2 face="Arial">&nbsp; ID, ID, SHAPE</font>
<br><font size=2 face="Arial">FROM </font>
<br><font size=2 face="Arial">&nbsp; (select ID,SHAPE </font>
<br><font size=2 face="Arial">&nbsp; &nbsp;FROM MYTABLE) </font>
<br><font size=2 face="Arial">&nbsp; &nbsp;WHERE &nbsp;</font><font size=2 color=red face="Arial"><b>ID
= &nbsp;ID = 4711</b></font><font size=2 face="Arial"> &nbsp;AND </font>
<br><font size=2 face="Arial">&nbsp; &nbsp;SDO_FILTER( </font>
<br><font size=2 face="Arial">&nbsp; &nbsp; &nbsp;SHAPE, MDSYS.SDO_GEOMETRY(2003,
82015,</font>
<br><font size=2 face="Arial">&nbsp; &nbsp; &nbsp;NULL,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3),</font>
<br><font size=2 face="Arial">&nbsp; &nbsp; &nbsp;MDSYS.SDO_ORDINATE_ARRAY(2501576.69,5621567,2503419.31,5622567)
),'querytype=window') = 'TRUE' . </font>
<br><font size=2 face="Arial">Check your data statement.</font>
<br>
<br><font size=2 face="Courier New"><b>Attachement &quot;Part of mapfile&quot;:</b></font>
<br><font size=2 face="Courier New">&nbsp; # Projekte</font>
<br><font size=2 face="Courier New">&nbsp; LAYER</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; NAME &quot;PROJEKT&quot;</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; TYPE POINT</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; STATUS DEFAULT</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; #DEBUG ON</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; TEMPLATE &quot;dummy.html&quot;</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; CONNECTION &quot;XXX/YYY@ZZZ&quot;</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; CONNECTIONTYPE oraclespatial</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; DATA &quot;SHAPE FROM
(select ID,SHAPE FROM MYTABLE) using unique ID srid 82015&quot;</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; CLASS</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; NAME &quot;&quot;</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; STYLE</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; COLOR 0
100 100</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; OUTLINECOLOR
0 0 0</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; SIZE 12</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; SYMBOL
'star'</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; END</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; END</font>
<br><font size=2 face="Courier New">&nbsp; END</font>