0

我正在尝试将项目添加到 H2 数据库。我的代码是:

class Test extends LongKeyedMapper[Test] with IdPK {
  def getSingleton = Test
  object name extends MappedString(this, 100)
}

Test.create.name("some_name").id(2).save,但我总是得到java.lang.Exception: Do not have permissions to set this field。我能做错什么?连接当然是打开的,我有权访问数据库中的数据。

4

1 回答 1

3

IdPK默认情况下不可写的扩展MappedLongIndex,这就是它限制您设置字段的原因。通常你会让数据库通过自动增量字段(postgres、mysql)、触发器+序列(oracle)等自动为你生成一个PK ID。所以在大多数常见的场景中你不需要设置这个字段。为了能够仍然设置它,请在您的字段上添加这样的覆盖:

override def writePermission_? = true
于 2014-07-10T19:24:19.500 回答