2

我从 scala/lift webapp 连接到 Oracle 数据库。我已经能够按照我的意愿成功地从数据库中提取信息,但是遇到了一个问题。

对于我要访问的每个表,我都需要添加一个 ID 字段,以便应用程序可以使用特征 IdPK。

我可以使用什么映射器类或特征来覆盖它?我一直试图找到一个,但无法找到它。想像的人并不总是在他们制作的每张表上都有一个 ID 字段,即 ID ......

class DN_REC extends LongKeyedMapper[DN_REC] with IdPK { 
 def getSingleton = DN_REC 

 object dn_rec_id extends MappedInt(this){
 }

这就是我所说的。我想使用 dn_rec_id 作为我的主键,因为它在桌子上。

谢谢

4

1 回答 1

3

没有理由你必须使用 IdPK 特征。如果你检查源代码,你会看到它的定义如下:

trait IdPK /* extends BaseLongKeyedMapper */ {  
  self: BaseLongKeyedMapper =>  
  def primaryKeyField = id  
  object id extends MappedLongIndex[MapperType](this.asInstanceOf[MapperType])
}  

所以基本上,它只是创建一个名为的长索引id并将其作为主键。您可以使用 id 的另一个名称轻松地自己完成此操作。

于 2010-06-11T04:51:05.530 回答