Поддерживает ли MySQL пользовательские типы данных

Можно ли определить (псевдоним) базовый тип данных в MySQL?

В настоящее время я хотел бы определить UUID как char (32), а затем использовать UUID как тип во всем определении схемы. Поскольку мы прототипируем на данный момент, UUID, скорее всего, изменится - я хотел бы убедиться, что это изменение отражается последовательно во всей схеме.

Я думаю что-то вроде:

псевдоним UUID char (32);

Спасибо заранее!

Ответ 1

В этом случае может быть полезным текстовый препроцессор, такой как M4 или любой предпроцессор на языке C.

Если в файле tables есть следующие файлы .sql:

define(UUID, char(32))
create table mytable1 (my_uuid UUID);
create table mytable2 (my_uuid UUID);

Запуск

$ m4 tables.sql

вы получите:

create table mytable1 (my_uuid char(32));
create table mytable2 (my_uuid char(32));

Ответ 2

Ну, ENUM выполняет эту работу до определенного ожидания ваших пользовательских типов данных, но я слишком надеюсь с нетерпением ждать этой темы