错误:值seq不是对象slick.dbio.DBIO的成员

时间:2015-05-25 10:52:19

标签: postgresql scala playframework slick

我正在播放框架中编写一个Web应用程序。我决定使用slick(FRM)在我的数据库中查询(postgre)。我是新手,所以我开始关注版本3.0.0的光滑官方文档 http://slick.typesafe.com/doc/3.0.0/gettingstarted.html

根据文档,我在build.sbt文件中添加了依赖项

libraryDependencies ++= Seq(
  "com.typesafe.slick" %% "slick" % "3.0.0",
  "org.slf4j" % "slf4j-nop" % "1.6.4"
)

其他一切工作正常但在我的Scala IDE中编写以下内容时。它显示错误

  

value seq不是对象slick.dbio.DBIO的成员

val setup = DBIO.seq(
// Above line is showing error

(suppliers.schema ++ coffees.schema).create,
.
.
.
)

事实上,Scala IDE(与eclipse IDE相同)并没有检测到对象DBIO的任何成员,但是当我浏览对象DBIO的相同版本http://slick.typesafe.com/doc/3.0.0/api/#slick.dbio.DBIO$的slick api时,我看到了seq,因为它'的成员。

我在哪里做错了?

3 个答案:

答案 0 :(得分:1)

正如反言名和克里斯·斯科特所预料的那样,problem was fixed发布了Slick 3.1

答案 1 :(得分:0)

您需要导入正在使用的数据库的API:

MERGE INTO tab3 D
   USING (SELECT col1 FROM tab1 where col1 in(select col1 from tab2)) S
   ON (D.col1 = S.col1)    
   WHEN NOT MATCHED THEN 
   INSERT (D.col1,D.code) 
   values(S.COL1,100);
    DELETE tab1 WHERE(col1 in(select col1 from tab2) );

答案 2 :(得分:0)

我不确定你是否得到了答案(我会回答那些可能在将来偶然发现的人),但我通过升级到3.0解决了这个问题。 .0-M1并使用Action.seq()而不是DBIO.seq()

这可能也适用于3.0.0,但我不确定我从Slick 2.x升级到3.0.0-M1!