Microsoft SQL Server Spatial Reader Parameters

About Database Connections

Database formats include a Database Connection parameter that defines and stores authentication information. For general information about sharing database connections, please see Using Database Connections. Using Database Connections.

Note that Database Connection parameters differ slightly, depending on context and/or database format.

Connection

From the Connection parameter in a database format, you can do one of the following:

  • Select an existing, previously defined connection. See the section Reusing a Database Connection in Using Database Connections
  • Select Add Database Connection to define a new connection. See database-specific parameters below, as well as the section Adding a Database Connection in a Workspace in Using Database Connections. The new connection can be made visible only to the current user, or can be shared among multiple users.

Connection Parameters (Add Database Connection dialog)

Server

The host name of the Microsoft SQL Server or Azure SQL Database. (It is not necessary to specify a port if a default configuration is used.)

If you have configured your Microsoft SQL Server database to use a non-standard port number, you can specify this port here.

The correct syntax is:

<Host>[\<Instance>][:<port>]

Database

To initiate a database connection, enter (or browse for) the database name.

Authentication

  • SQL Server Authentication – Select this option to proceed with specifying login credentials through the Username and Password parameters.
  • Windows Authentication – Select this option when connecting through a Windows user account, and the database can validate the account name and password using the Windows principal token in the operating system. Since the user account is retrieved by Windows, the Username and Password parameters are ignored.

Username and Password

Enter the username and password to access the service.

Encrypt Connection

Note   This parameter is not present in the Azure SQL Database reader and writer. The Azure SQL Database reader and writer will always request Secure Sockets Layer (SSL) encrypted connections.

When selected, this parameter requests Secure Sockets Layer (SSL) encryption for the connection. If the server does not have a certificate trusted by the client machine, the connection will fail. Otherwise, data will be encrypted before traveling over the network. There are multiple ways to trust a server certificate on a client machine.

If this parameter is not selected, encryption behavior will be determined by encryption properties set for SQL Server Native Client, and for SQL Server.

Tip   When Encrypt Connection is selected, please provide a fully qualified Server name. For example, a server named safe-sql-server might have a fully qualified name of safe-sql-server.dev.safe. This fully qualified name should be an exact match for the server name on the trusted certificate.

Multi-Subnet Failover

Enable this option if you are connecting to a SQL Server that has been configured for High Availability (HA).

Constraints

Additional Attributes to Expose

Use this parameter to expose Format Attributes in FME Workbench when you create a workspace:

  • In a dynamic scenario, it means these attributes can be passed to the output dataset at runtime.
  • In a non-dynamic scenario, this parameter allows you to expose additional attributes on multiple feature types. Click the browse button to view the available format attributes (which are different for each format) for the reader.
 

A search envelope (also known as a bounding box) is a rectangular area that defines a geographic area. In FME, the easiest way to define a search envelope is to use search envelope parameters.

Defining a search envelope is the most efficient method of selecting an area of interest because FME will read only the data that is necessary – it does not have to read an entire dataset. Search Envelope parameters apply to both vector and raster datasets and can be particularly efficient if the source format has a spatial index.

Most FME readers have parameters to define the search envelope of data that is being read:

Screenshot with blank search envelope min and max x and y parameters

The parameters include the x and y coordinates of the bounding box as well as a parameter that defines the coordinate system.

How to Define the Bounding Box

Using the minimum and maximum x and y parameters, define a bounding box that will be used to filter the input features. Only features that intersect with the bounding box are returned. Note that the bounding box intersection is not a full geometry intersection (based on spatial relationships) that would be returned by a transformer like the SpatialFilter.

Note  If all four coordinates of the search envelope are left at 0, the search envelope will be disabled even if this option is checked.

Search Envelope Coordinate System

Specifies the coordinate system of the search envelope if it is different than the coordinate system of the data. The coordinate system associated with the data to be read must always be set if this parameter is set.

If this parameter is set, the minimum and maximum points of the search envelope are reprojected from the Search Envelope Coordinate System to the reader’s coordinate system prior to applying the envelope.

Clip to Search Envelope

The underlying function for Use Search Envelope is an intersection; however, when Clip to Search Envelope is checked, a clipping operation is also performed.

  • When left unchecked (set to No), features that overlap the boundary will be included in their full (unclipped) form.
  • When checked (set to Yes), this option instructs FME to clip features to the exact envelope boundary. FME removes any portions of imported features being read that are outside the search envelope.

Clip to Search Envelope: No

Clip to Search Envelope: Yes

Any features that cross the search envelope boundary will be read, including the portion that lies outside of the boundary.

Any features that cross the search envelope boundary will be clipped at the boundary, and only the portion that lies inside the boundary will be read.

The search envelope includes the bounding box and the extent of the raster.

The search envelope includes only the area within the bounding box.

The raster size will still match the bounding box, but the area without data will be filled with Nodata values to represent the absence of data, if the source raster has them.

Raster Nodata may be a single value across all bands, a single value per band, or a separate alpha or transparency band that indicates the lack of data values (this is more common in images than other types of rasters).

Advanced

Application Intent

Declares the application workload type when connecting to a server in an Always On environment.

  • ReadWrite (default) – The driver connects to a read-write node.
  • ReadOnly – The client requests a read workload when connecting. The server enforces the intent at connection time.

Geometry Columns Have Exactly One SRID

SQL Server does not constrain all geometry objects in a column to have the same Spatial Reference ID (SRID). However, it is common practice to use a single SRID within a given column.

If this parameter is set to No, FME will not assume that each geometry column uses a single SRID when querying the database. If this parameter is not set, the default value is Yes.

Handle Multiple Spatial Columns

If Yes, feature geometry will be read into an aggregate. A directive is set on the aggregate to indicate that each part of the aggregate is independent from the others, and its own geometry. Geometry parts of the aggregate are named and contain geometry according to their respective column in the table being read.

When using this feature, neither the geometry/geography column, nor the feature type SELECT statement can be specified.

Use MakeValid with Search Envelope

This parameter controls whether or not the MakeValid() SQL command will be used when there is a Search Envelope being applied.

  • Yes:MakeValid() will be used. This may cause a slow-down during reading, as the spatial data will validated and possibly corrected.
  • No (default):MakeValid() will not be used. This may speed up reading; however, it may cause the translation to fail if there is invalid data. If a translation fails, setting this parameter to Yes will allow the translation to succeed.