NOT NULL
Constraints with MariaDB Enterprise Server
This page is part of MariaDB's Documentation.
The parent of this page is: Constraints for MariaDB Enterprise Server
Topics on this page:
Overview
MariaDB Enterprise Server supports NOT NULL
constraints to ensure that a column's value is not set to NULL
:
When a column is declared with a
NOT NULL
constraint, Enterprise Server rejects operations that would write aNULL
value to the column
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
CREATE TABLE
and NOT NULL
Constraints
With MariaDB Enterprise Server, the CREATE TABLE statement can be used to create a new table with a NOT NULL
constraint on one or more columns:
CREATE TABLE hq_sales.invoices (
invoice_id BIGINT UNSIGNED 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)
);
ALTER TABLE
ALTER TABLE .. MODIFY COLUMN .. NOT NULL
With MariaDB Enterprise Server, the ALTER TABLE statement can be used to add the NOT NULL
constraint to a column using the MODIFY COLUMN
clause:
ALTER TABLE hq_sales.invoices
MODIFY COLUMN customer_id INT NOT NULL;
ALTER TABLE .. MODIFY COLUMN .. NULL
With MariaDB Enterprise Server, the ALTER TABLE statement can be used to remove the NOT NULL
constraint from a column using the MODIFY COLUMN
clause:
ALTER TABLE hq_sales.invoices
MODIFY COLUMN customer_id INT NULL;