java - 如何让休眠自动生成数据库 EnumType?
问题描述
我的目标是创建一个@Entity
使用hibernate自动生成下表:
CREATE TABLE data_history (
id bigint auto_increment,
action enum('INSERT','UPDATE','DELETE'),
PRIMARY KEY(id)
);
问题是枚举:我如何告诉休眠生成该枚举类型?
我尝试如下:
@Entity
public class DataHistory {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
public long id;
@Enumerated(EnumType.STRING)
public DatabaseTrigger action;
}
public enum DatabaseTrigger {
INSERT, UPDATE, DELETE
}
结果:
action varchar(255) NOT NULL
解决方案
这还不可能。也许在 6.x 中我们会引入对此的支持,但现在,您必须手动执行此操作。
推荐阅读
- sublimetext3 - Sublime Text 有 Jupyter Notebook 中的 Shift+Tab 之类的功能吗?
- amazon-web-services - 在 AWS ec2 实例中自动安装 exe
- c - 读取字节流文件
- python-3.x - 为熊猫中的数据框列换行
- odoo - 如何在同一台机器上运行 Odoo 10 和 11.0?
- preg-replace - 我不明白 preg_replace_callback 是如何工作的,如何从 preg_replace 更新
- c++ - 将 C 程序转换为具有大量 char* 和 unsigned char 转换错误的 C++
- google-analytics - 如何在 AMP 页面中跟踪 youtube 视频
- android - 如何从地图上获取街道地址、邮政编码、国家、州?
- rundeck - 如何使用 ruby restclient 在 yaml 中导入 rundeck 作业