我在DB视图中定义了一个光滑的表格.每天我们创建一个日期视图,该视图匹配相同的结构,其名称附加日期为T_SUMMARY_ ieT_SUMMARY_20131213.
是否有一种方法可以动态覆盖表名,以便为正确的日期视图生成所需的查询.
object TSummary extends Table[(String)]("T_SUMMARY")
{
def id = column[String]("ROWID", O.PrimaryKey)
def tNum = column[Int]("T_NUM")
def tName = column[Int]("T_NAME")
def * = id
}
Run Code Online (Sandbox Code Playgroud)
在Slick 1.0.1中:
def mkSummaryTable(name: String) = new Table[(String)](name){
def id = column[String]("ROWID", O.PrimaryKey)
def tNum = column[Int]("T_NUM")
def tName = column[Int]("T_NAME")
def * = id
}
val current = mkSummaryTable("T_SUMMARY_20131213")
for( r <- Query(current) ) yield r.tName
Run Code Online (Sandbox Code Playgroud)
对于Slick 2.0,请参阅https://groups.google.com/d/msg/scalaquery/95Z7AfxKP_4/omGnAtuN8FcJ:
class MyTable(tag: Tag, tableName: String) extends Table[(String)](tag, tableName){
def id = column[String]("ROWID", O.PrimaryKey)
def tNum = column[Int]("T_NUM")
def tName = column[Int]("T_NAME")
def * = id
}
val tQ = TableQuery[MyTable]((tag:Tag) => new MyTable(tag, "SomeTableName")) filter ...
Run Code Online (Sandbox Code Playgroud)