colum "status_code" имеет тип public.status_code, но выражение типа стол в дм с такими столбцами, как ID (
Код: Выделить всё
uuid
Код: Выделить всё
varchar
Код: Выделить всё
status_code< /code>)
status_code
Create type status_code as Enum ('SC_1', 'SC_2', 'SC_3', 'SC_4');
< /code>
my java enum выглядит ниже < /p>
package monarch;
public enum status_code { SC_1, SC_2, SC_3, SC_4;}
< /code>
, который потребляется в моей сущности, которая выглядит ниже < /p>
@Entity
@Table(name = "PLAYER_DETAILS")
@Data
@AllArgsConstructor
public class Player {
@column(name="ID", nullable=false)
private UUID id;
@column(name="NAME", nullable=false)
private String name;
@column(name="STATUS_CODE", nullable=false, columnDefinition = "status_code")
private status_code statusCode;
}
< /code>
В моем классе службы у меня есть функция ниже, чтобы обновить состояние < /p>
public Player updateStatus(UUID id, status_code code) {
Player player = repo.findById(id);
player.setStatusCode(code); //code value is correct says SC_1
return repo.save(id); //throws error saying colum "status_code" is of type public.status_code but expression is of type character varying
}
< /code>
repo class < /p>
public interface PlayerRepository extends CrudRepository {
}
< /code>
Любая помощь, чтобы указать, что здесь идет не так? Я совершенно новичок в Java, поэтому, пожалуйста, не проголосуйте и дайте мне знать в комментариях, если я должен добавить какую -либо дополнительную информацию.
Спасибо.>
Подробнее здесь: https://stackoverflow.com/questions/794 ... y-has-enum