【发布时间】:2015-12-09 18:23:37
【问题描述】:
我正在尝试使用 Slick 与 Oracle DB 进行交互。映射为:
trait EntityTable extends DataBaseConfig{
import driver.api._
class Log(tag: Tag) extends Table[LogEntity](tag,"LOG_SCHEMA.A_TABLE_WITH_VERY_LONG_NAME") {
def id = column[Option[Long]]("LOG_ID",O.PrimaryKey,O.AutoInc)
def log = column[String]("LOG_TEXT")
def * = (LOG_ID, LOG_TEXT) <> ((LogEntity.apply _).tupled, LogEntity.unapply)
}
protected val getLogs = TableQuery[Log]
}
从调试器中我看到生成的 SQL 是:
select "LOG_ID", "LOG_TEXT" from "LOG_SCHEMA.A_TABLE_WITH_VERY_LONG_NAME"
这给了我一个
ORA-00972: identifier is too long
如何在没有双引号的情况下生成光滑的查询?还是有更好的方法来处理我无法控制的不同方案中的长表名?谢谢!
【问题讨论】: