开发者

How to specify SQL comments through JPA annotations?

Is there any way to specify SQL comments through开发者_StackOverflow JPA annotations? Comments for tables and columns.


There is a way, at least for MySQL. It depends on your database engine. For MySQL you could add the comment to the columnDefinition. Here is an example for a column:

/**
 * Database id.
 */
@javax.persistence.Id
@javax.persistence.GeneratedValue(strategy = javax.persistence.GenerationType.AUTO)
@javax.persistence.Column(columnDefinition = "SMALLINT UNSIGNED COMMENT 'The KEY obviously'")
private Long id;

As you can see the comment ('The KEY obviously') is part of the column definition. But it's not standard JPA as you need to change it if you change the database engine. The same way you must change the column definition if you use a non-standard SQL type and you change the database engine.


Is there any way to specify SQL comments through JPA annotations? Comments for tables and columns.

No. If you want to define tables and columns comments, your best option is to do it after the facts in the generated DDL, before executing it against your database.


The standards(http://savage.net.au/SQL/) do not seem to define any way to define table or column comments (looks like they don't even mention them). So, the syntax for comments on tables/columns can vary from one DBMS to another. I think thats why JPA offers no generic way to do that

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜