# Package org.apache.sis.storage.sql

Data store capable to read and create features from a JDBC connection to a database. `SQLStore` takes a one or more tables at construction time. Each enumerated table is represented by a `FeatureType`. Each row in those table represents a `Feature` instance. Each relation defined by a foreigner key is represented by an `FeatureAssociationRole` to another feature (with transitive dependencies automatically resolved), and the other columns are represented by `AttributeType`.

The storage of spatial features in SQL databases is described by the OGC Simple feature access - Part 2: SQL option international standard, also known as ISO 19125-2. Implementation of geometric types and operations must be provided by the database (sometime through an extension, for example PostGIS on PostgreSQL databases). This Java package uses those provided types and operations.

Limitations

- Current implementation does not scan the `"GEOMETRY_COLUMNS"` (from Simple Feature Access) or `"gpkg_content"` (from GeoPackage) tables for a default list of feature tables.
- Current implementation does not yet map geometric objects (e.g. PostGIS types).
- If a parent feature contains association to other features, those other features are created in same time than the parent feature (no lazy instantiation yet).

Since:
  1.0

Defined in the `sis-sqlstore` module

- Class Summary
  Class | Description
  --- | ---
  SQLStore | A data store capable to read and create features from a spatial database.
  SQLStoreProvider | Provider of `SQLStore` instances.