gpt4 book ai didi

hibernate - 更新基础表中的解码字段

转载 作者:行者123 更新时间:2023-12-02 13:44:45 24 4
gpt4 key购买 nike

我有基于oracle 11g基础表的 View 。我还使用Kotlin和Hibernate作为ORM

View 具有以下性别:

decode(c.xxyy,'0','Male','1','Female','Undefined') as gender,

基础表的数据类型为 CHAR(1 BYTE)我目前只有顶部的选择和更新 View 的权限。
但我似乎找不到要放入 View 的数据类型。
尝试将属性作为 String放入会导致错误 ORA-01733: virtual column not allowed here
另外,尝试其他数据类型(例如 int或简单的 enum GENDER)将导致有关数据类型的不同错误。所以我认为 String是正确的选择。
    @Entity
@Table(name = "TVIEW", schema = "XXXX")
class PersonBackground(

@Id
@Column(name = "ID")
var id: String,

@Column(name = "NICKNAME")
var nickname: String?,

@Column(name = "BIRTHPLACE")
var birthCity: String?,

//@Column(name = "GENDER")
//var gender: String
)

我可以以某种方式更新顶部 View 吗?还是我必须更新基础表?

一旦我从更新查询中删除了Gender,整个事情就开始起作用了,但是不幸的是我们也需要此信息。

最佳答案

哦,

即使您觉得应该忽略最佳做法,并在表格顶部写您的 View ,我也会告诉您不要这样做

这个问题从来没有任何真正的答案,我只能说几周后,如果您遵循最佳实践并写入基础表,您的生活就会轻松很多。

谢谢,对不起

关于hibernate - 更新基础表中的解码字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59839769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com