mysql 数据库切换到sqlserver数据库hibernate报无法插入null,hibernate 主键生成机制回顾
hibernate 的主键生成策略主要用,序列,自增,通用三种方式。
序列:(只有在oracle 和DB2中支持)<id name="id" column="id"> <generator class="sequence"> <param name="sequence">在数据库中创建的squence的名字</param> </generator></id>
自增:(只支持mysql 和sqlserver)
在建表的时候设置 auto_increment 属性<id column name="friend_id" length="10"> <generator class="identity"/> </id>
通用:mysql不适用如果是oracle,序列名字一定要用hibernate_sequence<id column name="friend_id" length="10"> <generator class="native"/> </id>