我有一個現有的數據庫。需要使用默認值添加new not null列。可以在使用ValueGenerator接口的hibernate 4.3中完成相同的操作。但是我的項目有休眠3.6它不提供這種功能。是否有任何方式使用休眠做到這一點。如何在現有數據庫中生成new not null列的默認值
0
A
回答
2
你可以用@Column acchive可空屬性 例如:
@Column(nullable = false)
private String name = "Jhon Doe";
還有一點點的黑客使用columnDefinition道具例如:@Column註釋,例如:
@Column(columnDefinition="double precision default '96'")
private Double grolsh;
0
從休眠實況爲例(默認):
@Column(name = "INITIAL_PRICE",
columnDefinition = "number(10,2) default '1'")
@org.hibernate.annotations.Generated(
org.hibernate.annotations.GenerationTime.INSERT
)
private BigDecimal initalPrice;
而對於可空,你可以使用
@Column(nullable = false)
1
您可以通過sql本身來做到這一點。
ALTER TABLE {TABLENAME}
ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL}
CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE}
[WITH VALUES]
相關問題
- 1. 使用默認值創建列NOT NULL
- 2. 無法添加具有默認值NULL的NOT NULL列
- 3. 在Oracle中添加NOT NULL LOB列沒有默認值
- 4. 從插入隱含的默認值成NOT NULL列
- 5. 實體框架爲NOT NULL列生成值,其中默認定義了db
- 6. NOT NULL約束要求默認值
- 7. 插入默認爲NOT NULL列,如果值爲null
- 8. 如果列值爲NULL,如何實現默認值?
- 9. 老版本的PHP/MYSQL是否有NOT NULL列的默認值?
- 10. 缺少NOT NULL TIMESTAMP的默認值?
- 11. 創建列允許NULL,但默認值設置爲NOT NULL
- 12. NOT NULL沒有出現在web2py的數據庫表中?
- 13. 具有默認值的SQLite數據庫
- 14. 在NOT NULL字段顯式使用「默認默認值」的MS SQL - 爲什麼?
- 15. `execute_non_query':無法添加具有默認值NULL的NOT NULL列(DataObjects :: SyntaxError)
- 16. 如何在現有數據庫中生成唯一的ID-s?
- 17. activerecord:數據庫默認值不生效
- 18. 如何讓數據庫字段在OpenERP7中具有默認值?
- 19. 在SSMS中生成腳本2016 RC for Azure數據庫忽略默認值
- 20. 如何根據現有NSManagedObject值在NSManagedObject派生類中設置默認值?
- 21. H2數據庫默認值TIMESTAMP列
- 22. grails數據庫遷移 - 它可以生成'不是默認值'?
- 23. 如何修改具有默認值的列的數據類型
- 24. 如何在數據庫中設置sqldatasource默認值在c#中?
- 25. 數據庫默認列
- 26. 如何在實體(核心數據)中生成默認記錄?
- 27. 如何在現有列表項中添加默認值?
- 28. CQFL RAW方法參數在生成的SQL中丟失其默認NULL值
- 29. 在SQL Server中爲沒有指定默認值的列生成默認值的腳本
- 30. MySQL默認數據庫以及如何使現有的非InnoDB成爲InnoDB
這將適用於新表。我有existimg表中的條目,需要在現有表格中添加默認值。 –
什麼是您的項目的休眠ddl自動配置設置,它是否更新? –
是的,它是更新。 –