MySQL 5.7, 8.0.12 dan yang lebih lama
MySQL pada 5.7 atau 8.0.12 tidak mendukung penggunaan fungsi atau ekspresi sebagai nilai default kolom.
https://dev.mysql.com/doc /refman/5.7/en/data-type-defaults.html
Alternatifnya adalah menggunakan pemicu untuk memantau BEFORE INSERT
dari tabel yang diinginkan.
DELIMITER ;;
CREATE TRIGGER `foo_before_insert`
BEFORE INSERT ON `foo` FOR EACH ROW
BEGIN
IF new.id IS NULL THEN
SET new.id = uuid();
END IF;
END;;
DELIMITER ;
Ini akan mengubah nilai default dari INSERT
pernyataan ke uuid()
nilai, kecuali jika telah didefinisikan secara eksplisit.
MySQL 8.0.13 dan yang lebih baru
Dengan rilis MySQL 8.0.13 ekspresi sekarang dapat digunakan sebagai nilai default, asalkan diapit dalam tanda kurung.
Contoh db<>biola
https://dev.mysql.com/doc /refman/8.0/en/data-type-defaults.html