Skip to main content

Hi all,

I am currently loading data into a SQL Server database from geodatabases. When I load in the data in via arccatalog, i successfully see the data.

 

Now when I do this via FME, i seem to get a different icon and then the spatial index has to be recalculated. The data is visible but this icon appears at every point. Does this mean the spatial index has not been created? Is there a easy automated way, where the spatial index gets created when loading into a enterprise geodatabase SQL server?

This depends on whether you are creating the SQL Server table with FME, or inserting/updating an existing SQL Server table with FME.

If you are creating the table, then you need to separately create the Spatial Index (as you would for any index). Either this can be specified in the writer as a Transact-SQL Server statement "CREATE SPATIAL INDEX...", or you can get FME to "guess" the statement and attempt to execute it. See documentation here:

https://docs.safe.com/fme/html/FME_Desktop_Documentation/FME_ReadersWriters/mssql_spatial/format_parameters_w.htm

This is also what ArcCatlog does, by generating and executing a CREATE SPATIAL INDEX... statement when copying a Feature Class across, it is just that it does this "behind-the-scenes" since it assumes the user will always want a spatial index on the resulting table, regardless of whether the user wanted it or not! But it makes sense since ArcMap's performance is highly dependent on this spatial index being present (It can always be dropped easily enough though).


Reply