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