MariaDB DEFAULT() 函数使用指南
在 MariaDB 中,DEFAULT()
是一个内置函数,返回给定的表列的默认值。
MariaDB DEFAULT()
语法
这里是 MariaDB DEFAULT()
函数的语法:
DEFAULT(column_name)
参数
column_name
- 必需的。 一个列名。
返回值
MariaDB DEFAULT()
函数返回指定的列的默认值。
如果指定的列没有定义默认值,此函数将报告一个错误。
MariaDB DEFAULT()
示例
为了演示 DEFAULT()
函数的用法,让我们使用如下语句创建一个表 test_default
:
CREATE TABLE test_default (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
default_int INT NOT NULL DEFAULT 0,
default_date DATE NOT NULL DEFAULT (CURRENT_DATE)
);
这里,我们创建了一个表,它包含 4 个列,其中下面的 2 个列具有默认值:
default_int
的默认值为0
。default_date
的默认值由表达式(CURRENT_DATE)
产生。
然后,让我们再插入几条数据:
INSERT INTO test_default (name, default_int)
VALUES ('Tom', 1);
让我们看一下表中的数据:
SELECT * FROM test_default;
输出:
+----+------+-------------+--------------+
| id | name | default_int | default_date |
+----+------+-------------+--------------+
| 1 | Tom | 1 | 2023-02-03 |
+----+------+-------------+--------------+
现在,让我们使用 DEFAULT()
函数看一下 default_int
列的默认值:
SELECT DEFAULT(default_int) FROM test_default;
输出:
+----------------------+
| DEFAULT(default_int) |
+----------------------+
| 0 |
+----------------------+
default_int
的默认值为 0
,上面语句的输出也说明这一点。
让我们看一下在 name
列上调用 DEFAULT()
会发生什么:
SELECT DEFAULT(name) FROM test_default;
输出:
ERROR 1364 (HY000): Field 'name' doesn't have a default value
由于我们没有为 name
列定义默认值,因此 DEFAULT()
函数报告了一个错误。
让我们看一下在 default_date
列上调用 DEFAULT()
会发生什么:
SELECT DEFAULT(default_date) FROM test_default;
输出:
+-----------------------+
| DEFAULT(default_date) |
+-----------------------+
| 2023-02-03 |
+-----------------------+
结论
在 MariaDB 中,DEFAULT()
是一个内置函数,返回给定的表列的默认值。