CREATE TABLE
with MariaDB Enterprise Server
This page is part of MariaDB's Documentation.
The parent of this page is: Table DDL for MariaDB Enterprise Server
Topics on this page:
Overview
MariaDB Enterprise Server supports the CREATE TABLE
statement to create tables:
Enterprise Server accepts table options in
CREATE TABLE
statements to define table characteristics
Compatibility
MariaDB Enterprise Server 10.2
MariaDB Enterprise Server 10.3
MariaDB Enterprise Server 10.4
MariaDB Enterprise Server 10.5
MariaDB Enterprise Server 10.6
CREATE TABLE
To create a table with MariaDB Enterprise Server, use the CREATE TABLE statement:
CREATE TABLE hq_sales.invoices (
invoice_id BIGINT UNSIGNED AUTO_INCREMENT NOT NULL,
branch_id INT NOT NULL,
customer_id INT,
invoice_date DATETIME(6),
invoice_total DECIMAL(13, 2),
payment_method ENUM('NONE', 'CASH', 'WIRE_TRANSFER', 'CREDIT_CARD', 'GIFT_CARD'),
PRIMARY KEY(invoice_id)
);
default_storage_engine
System Variable
The default_ENGINE
table option is not provided in the CREATE TABLE statement. The default_InnoDB
by default, so tables use the InnoDB storage engine by default:
CREATE TABLE hq_sales.invoices (
invoice_id BIGINT UNSIGNED AUTO_INCREMENT NOT NULL,
branch_id INT NOT NULL,
customer_id INT,
invoice_date DATETIME(6),
invoice_total DECIMAL(13, 2),
payment_method ENUM('NONE', 'CASH', 'WIRE_TRANSFER', 'CREDIT_CARD', 'GIFT_CARD'),
PRIMARY KEY(invoice_id)
);
ENGINE
Table Option
InnoDB tables can be created using the CREATE TABLE statement with the ENGINE=InnoDB
table option:
CREATE TABLE hq_sales.invoices (
invoice_id BIGINT UNSIGNED AUTO_INCREMENT NOT NULL,
branch_id INT NOT NULL,
customer_id INT,
invoice_date DATETIME(6),
invoice_total DECIMAL(13, 2),
payment_method ENUM('NONE', 'CASH', 'WIRE_TRANSFER', 'CREDIT_CARD', 'GIFT_CARD'),
PRIMARY KEY(invoice_id)
) ENGINE=InnoDB;