Create Table Options
Create Table statements for “CONNECT” tables are standard MariaDB create statements specifyingengine=CONNECT
. There are a few additional table and column options specific to CONNECT.
Table Options
Table Option
Type
Description
AVG_ROW_LENGTH
Integer
Can be specified to help CONNECT estimate the size of a variable record table length.
BLOCK_SIZE
Integer
COMPRESS
Number
1 or 2 if the data file is g-zip compressed. Defaults to 0. Before CONNECT 1.05.0001, this was boolean, and true if the data file is compressed.
DATA_CHARSET
String
The character set used in the external file or data source.
DBNAME
String
ENGINE
String
Must be specfied as CONNECT.
ENDING
Integer
End of line length. Defaults to 1 for Unix/Linux and 2 for Windows.
FILE_NAME
String
The file (path) name for all table types based on files. Can be absolute or relative to the current data directory. If not specified, this is an Inward table and a default value is used.
FILTER
String
To filter an external table. Currently MONGO tables only.
HUGE
Boolean
To specify that a table file can be larger than 2GB. For a MYSQL table, prevents the result set from being stored in memory.
LRECL
Integer
The file record size (often calculated by default).
MAPPED
Boolean
Specifies whether file mapping is used to handle the table file.
MODULE
String
The (path) name of the DLL or shared lib implementing the access of a non-standard (OEM) table type.
MULTIPLE
Integer
Used to specify multiple file tables.
OPTION_LIST
String
Used to specify all other options not yet directly defined.
QCHAR
String
READONLY
Boolean
True if the data file must not be modified or erased.
SEP_CHAR
String
Specifies the field separator character of a CSV or XCOL table. Also, used to specify the Jpath separator for JSON tables.
SEPINDEX
Boolean
When true, indexes are saved in separate files.
SRCDEF
String
TABLE_LIST
String
The comma separated list of TBL table sub-tables.
TABLE_TYPE
String
TABNAME
String
XFILE_NAME
String
The file (path) base name for table index files. Can be absolute or relative to the data directory. Defaults to the file name.
ZIPPED
Boolean
True if the table file(s) is/are zipped in one or several zip files.
All integers in the above table are unsigned big integers.
Because CONNECT handles many table types; many table type specific options are
not in the above list and must be entered using the OPTION_LIST
option. The
syntax to use is:
... option_list='opname1=opvalue1,opname2=opvalue2...'
Be aware that until Connect 1.5.5, no blanks should be inserted before or after the '=
' and
',
' characters. The option name is all that is between the start of the
string or the last ',
' character and the next '=
' character, and the
option value is all that is between this '=
' character and the next ',
'
or end of string. For instance:
option_list='name=TABLE,coltype=HTML,attribute=border=1;cellpadding=5,headattr=bgcolor=yellow';
This defines four options, 'name
', 'coltype
', 'attribute
', and
'headattr
'; with values 'TABLE
', 'HTML
',
'border=1;cellpadding=5
', and 'bgcolor=yellow
', respectively. The only
restriction is that values cannot contain commas, but they can contain equal
signs.
Column Options
Column Option
Type
Description
DATE_FORMAT
String
The format indicating how a date is stored in the file.
DISTRIB
Enum
“scattered”, “clustered”, “sorted” (ascending).
FIELD_FORMAT
String
The column format for some table types.
FIELD_LENGTH
Integer
Set the internal field length for DATE columns.
FLAG
Integer
An integer value whose meaning depends on the table type.
JPATH
String
The Json path of JSON table columns.
MAX_DIST
Integer
Maximum number of distinct values in this column.
SPECIAL
String
The name of the SPECIAL column that set this column value.
XPATH
String
The XML path of XML table columns.
The
MAX_DIST
andDISTRIB
column options are used for block indexing.All integers in the above table are unsigned big integers.
JPATH and XPATH were added to make CREATE TABLE statements more readable, but they do the same thing as FIELD_FORMAT and any of them can be used with the same result.
Index Options
Index Option
Type
Description
DYNAM
Boolean
Set the index as “dynamic”.
MAPPED
Boolean
Use index file mapping.
Note 1: Creating a CONNECT table based on file does not erase or create the
file if the file name is specified in the CREATE TABLE statement (“outward” table). If the file does not exist, it will be populated by subsequent INSERT or LOAD
commands or by the “AS select statement” of the CREATE TABLE
command. Unlike the CSV engine, CONNECT easily permits the creation of tables
based on already existing files, for instance files made by other applications.
However, if the file name is not specified, a file with a name defaulting totablename.tabletype
will be created in the data directory (“inward” table).
Note 2: Dropping a CONNECT table is done with a standard DROP statement.
For outward tables, this drops only the CONNECT table definition but does not
erase the corresponding data file and index files. Use DELETE
orTRUNCATE
to do so. This is contrary to data and index files of inward
tables are erased on DROP like for other MariaDB engines.
This page is licensed: GPLv2
Last updated
Was this helpful?