The SQL/MED ("Management of External Data") extension to the SQL standard is defined by ISO/IEC 9075-9:2008 (originally defined for SQL:2003). SQL/MED provides extensions to SQL that define foreign-data wrappers and datalink types to allow SQL to manage external data. External data is data that is accessible to, but not managed by, an SQL-based DBMS. This standard can be used in the development of federated database systems.
Implementations
- PostgreSQL has support for some SQL/MED since version 9.1.12
- LucidDB has support for SQL/MED.3
- MariaDB has support for SQL/MED with the CONNECT storage engine.4 The implementation uses different syntax than the official standard.
- Farrago has support for SQL/MED.5
- IBM Db2 has support for SQL/MED.6
- Teiid has support for SQL/MED. 7
- Microsoft SQL Server has internal support for SQL/MED. DATALINK is provided by the FILESTREAM8 (SQL Server 2008) and FileTable (SQL Server 2012) functionnalities and external data wrapper by the EXTERNAL TABLEs and PolyBase9
See also
External links
References
PostgreSQL Wiki: SQL/MED http://wiki.postgresql.org/wiki/SQL/MED ↩
Chapter 5.12, "Foreign Data" of the PostgreSQL Guide. https://www.postgresql.org/docs/current/ddl-foreign-data.html ↩
LucidDB Architecture http://www.luciddb.org/html/arch.html ↩
CONNECT storage engine https://mariadb.com/kb/en/connect/ ↩
Farrago SQL/MED Support http://farrago.sourceforge.net/design/sqlmed.html ↩
IBM federated database technology http://www.ibm.com/developerworks/data/library/techarticle/0203haas/0203haas.html ↩
Teiid Documentation https://github.com/teiid/teiid-documents/blob/master/reference/ddl_deployment_mode.adoc ↩
FILESTREAM https://learn.microsoft.com/en-us/sql/relational-databases/blob/filestream-sql-server ↩
EXTERNAL TABLE / PolyBase https://learn.microsoft.com/en-us/sql/t-sql/statements/create-external-table-transact-sql ↩