检查表格存在于光滑3.0

时间:2015-05-04 18:09:44

标签: database scala slick-3.0

如何检查表格是否存在光滑的3.0?

使用以下版本的光滑版本有一种方法:

MTable.getTables.list()

但是这不再编译了。

这个问题背后的想法是在它不存在时动态创建一个表,非常像这样:

if (Tables.contains("USERS") == false)
    Users.createTable()

1 个答案:

答案 0 :(得分:15)

使用Slick 3.0 MTable.getTables是一个DBAction,它将通过Database实例运行:

val tables = Await.result(db.run(MTable.getTables), 1.seconds).toList

当然,您应该以异步方式(通过Future for-comprehension )处理db.run返回的map而不是阻止正如我为这个例子所做的那样。