The CONNECT handler was introduced in MariaDB 10.0.
CONNECT can handle very many table formats; it is indeed one of its main features. The Type option specifies the type and format of the table. The Type options available values and their descriptions are listed in the following table:
Type | Description |
---|---|
BIN | Binary file with numeric values in platform representation, also with columns at fixed offset within records and fixed record length. |
CSV*$ | "Comma Separated Values" file in which each variable length record contains column values separated by a specific character (defaulting to the comma) |
DBF* | File having the dBASE format. |
DOS | The table is contained in one or several files. The file format can be refined by some other options of the command or more often using a specific type as many of those described below. Otherwise, it is a flat text file where columns are placed at a fixed offset within each record, the last column being of variable length. |
DIR | Virtual table that returns a file list like the Unix ls or DOS dir command. |
FIX | Text file arranged like DOS but with fixed length records. |
FMT | File in which each record contains the column values in a non-standard format (the same for each record) This format is specified in the column definition. |
INI | File having the format of the initialization or configuration files used by many applications. |
MAC | Virtual table returning information about the machine and network cards (Windows only). |
JDBC* | Table accessed via a JDBC driver. (from Connect 1.04.0006) |
JSON*$ | File having the JSON format. (from MariaDB 10.0.16) |
MONGO* | Table accessed via the MongoDB C Driver API. |
MYSQL* | Table accessed using the MySQL API like the FEDERATED engine. |
OCCUR* | A table based on another table existing on the current server, several columns of the object table containing values that can be grouped in only one column. |
ODBC* | Table extracted from an application accessible via ODBC or unixODBC. For example from another DBMS or from an Excel spreadsheet. |
OEM* | Table of any other formats not directly handled by CONNECT but whose access is implemented by an external FDW (foreign data wrapper) written in C++ (as a DLL or Shared Library). |
PIVOT* | Used to "pivot" the display of an existing table or view. |
PROXY* | A table based on another table existing on the current server. |
TBL* | Accessing a collection of tables as one table (like the MERGE engine does for MyIsam tables) |
VEC | Binary file organized in vectors, in which column values are grouped consecutively, either split in separate files or in a unique file. |
VIR* | Virtual table containing only special and virtual columns. |
WMI* | Windows Management Instrumentation table displaying information coming from a WMI provider. This type enables to get in tabular format all sorts of information about the machine hardware and operating system (Windows only). |
XCOL* | A table based on another table existing on the current server with one of its column containing of comma separated values. |
XML*$ | File having the XML or HTML format. |
ZIP | Table giving information about the contents of a zip file. |
For all table types marked with a '*' in the table above, CONNECT is able to analyze the data source to retrieve the column definition. This can be used to define a “catalog” table that display the column description of the source, or to create a table without specifying the column definition that will be automatically constructed by CONNECT when creating the table.
When marked with a ‘$’ the file can be the result returned by a REST query.
© 2019 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/connect-table-types-overview/