[fdo-users] Spatial Query with MySQL FDO provider
George McLean
gmclean at gorge.net
Wed Feb 21 01:01:11 EST 2007
Dan,
Would you mind posting the correct syntax for the LINESTRING filter you
show below? I am still not having an success with this.
Thanks,
George
Dan Stoica wrote:
> What Gavin says is correct: in the case of mispelled geometry property
> you get a native MySql error:
>
> [1064] You have an error in your SQL syntax; check the manual that
> corresponds to your MySQL server version for the right syntax to use
> near ')' at line 1
>
> It is strange you don't get it for POINT ("Only POINT seems to work.")
>
> By any chance, are you passing the string with single quotes like:
>
> selCmd->SetFilter(L"'geometry INTERSECTS GEOMFROMTEXT
> ('LINESTRING XY (2536400 481800, 2536500 481900)')' ");
>
> In this case you'll get:
>
> "(.\Src\Fdo\Parse\Parse.cpp: 353) String does not represent a valid
> filter. [(\Src\Fdo\Parse\Parse.cpp: 346) String incorrectly formatted.
> ]"
>
> So, please check the quotes and let me know what is the case.
>
> Dan.
>
>
>
> -----Original Message-----
> From: fdo-users-bounces at lists.osgeo.org
> [mailto:fdo-users-bounces at lists.osgeo.org] On Behalf Of Gavin Cramer
> Sent: Friday, February 16, 2007 4:08 PM
> To: George McLean; fdo-users at lists.osgeo.org
> Subject: RE: [fdo-users] Spatial Query with MySQL FDO provider
>
> I just tried it by quickly hacking a unit test, and both the POINT and
> LINESTRING examples worked for me. I am using MySQL 5.0.24a.
>
> However, I did notice that when I misspelled the property name (it was
> supposed to be "Geometry" for the unit test), the resulting error
> message was from MySQL, regarding a bad ')'. It was not a complaint
> about the column name, nor was it an FDO SQL translation exception about
> a property name that you might expect if you created the filter using
> C++ objects, e.g. with FdoSpatialCondition::Create().
>
> Is this any help?
>
> Gavin
>
>
> -----Original Message-----
> From: fdo-users-bounces at lists.osgeo.org
> [mailto:fdo-users-bounces at lists.osgeo.org] On Behalf Of George McLean
> Sent: Thursday, February 15, 2007 6:15 PM
> To: fdo-users at lists.osgeo.org
> Subject: [fdo-users] Spatial Query with MySQL FDO provider
>
> I am having trouble writing spatial queries against MySQL 5.0.18 using
> the OSGeo.MySQL.3.2 provider
>
> I pass the string 'geometry INTERSECTS GEOMFROMTEXT ('POINT XY (2536400
> 481800)')' to the SetFilter method of an MgFeatureQueryOptions object.
> When I call selectFeatures from a feature service object, I get no
> errors.
>
> When I use the filter string 'geometry INTERSECTS GEOMFROMTEXT
> ('LINESTRING XY (2536400 481800, 2536500 481900)')' I get the following
> error on selection:
>
> An exception occurred in FDO component. String does not represent a
> valid filter.
>
> As far as I can tell the query string is OK. I have the same problem
> with using POLYGON as the geometry as well. Only POINT seems to work.
> When I query the capabilities of the MySQL provider it appears to me
> that LINESTRING and POLYGON are supported.
>
> Any suggestions?
>
> Thanks
>
> George McLean
> _______________________________________________
> fdo-users mailing list
> fdo-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/fdo-users
>
> _______________________________________________
> fdo-users mailing list
> fdo-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/fdo-users
>
>
>
More information about the fdo-users
mailing list