我正在使用NHibernate和流利NHibernate进行映射的.NET Web API应用程序。是否有可能从标量函数的结果中分配默认值
我有一个名为标量函数“next_photo_id()”产生像 Sharding & IDs at Instagram
Int64的数量,但我不能指定标量函数MySQL中的默认值ID列。我试过了,我得到了错误。
ALTER TABLE `photos`
CHANGE COLUMN `id` `id` BIGINT(20) NOT NULL DEFAULT next_photo_id() FIRST ;
所以我试着从应用程序端使用fluentNhibernate分配Id。
我的照片表的类映射是
public class PhotoMap : ClassMap<Photo>
{
public PhotoMap()
{
Table("photos");
Id(m => m.Id).Column("id").Access.Property().Default("next_photo_id()");
Map(m => m.Caption).Column("caption");
}
}
照片表插入查询必须是,
Insert Into photos (id,caption) values (next_photo_id(),"test")
但我不能这样做。无论如何去做?