首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在数据库上从@Enumerated更改为@Enumerated(EnumType.STRING

在数据库上从@Enumerated更改为@Enumerated(EnumType.STRING
EN

Stack Overflow用户
提问于 2013-07-11 06:55:04
回答 2查看 395关注 0票数 0

我在一个已经在运行的应用程序中的一些字段上枚举了注解@。我被告知要将其更改为@Enumerated(EnumType.STRING),以防止枚举值更改时出现问题。数据库已经被填充,所以问题是

将数据库上的值从1、2、3..添加到Enum类的相应字符串值中?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-12 03:40:33

如果您正在询问如何维护这些值并更改DB,那么我认为您必须在几个步骤中完成(切换值的基本算法):

  1. 在表中添加一个新列,以便将列中的值从您的列中删除到新列中。
  2. 删除列的所有内容
  3. 更改表使其成为字符串列
  4. 将备份列中的值复制回原始列。

这是非常详细的,我不确定这是否是你要问的……

票数 0
EN

Stack Overflow用户

发布于 2013-07-11 07:47:55

当您标记此注释时,您的ORM库应该自动尝试使用Enum.valueOf()函数将字符串转换为Enum值。因此,DB应该包含Enum的字符串形式,即Enum值的toString()/name()表示。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17582333

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档