gpt4 book ai didi

scala - 在 Slick 2.0 中插入后返回 AutoInc ID

转载 作者:行者123 更新时间:2023-12-03 10:38:04 25 4
gpt4 key购买 nike

我曾到天涯海角寻找这个问题的答案。没有太多关于 slick 2.0 的信息。下面是我的 Addresses 模型的代码,我如何让 create 方法在插入后返回 id?

package models
import play.api.Play.current
import play.api.db.slick.Config.driver.simple._
import play.api.db.slick.DB

object Addresses{
val DB_URL:String = "jdbc:h2:mem:fls-play"
val DB_driver:String = "org.h2.Driver"
class Addresses(tag: Tag) extends Table[(String, String, String, String, String)](tag, "ADDRESSES"){
def id = column[Int]("ID", O.PrimaryKey, O.AutoInc)
def city = column[String]("CITY")
def stateName = column[String]("STATE_NAME")
def street1 = column[String]("STREET1")
def street2 = column[String]("STREET2")
def zip = column[String]("ZIP")

def * = (city, stateName, street1, street2, zip)
}
val addresses = TableQuery[Addresses]

def create(city:String, stateName:String, street1:String, street2:String, zip:String) {
DB.withSession{ implicit session =>
addresses += (city, stateName, street1, street2, zip)
}
}
}

谢谢!

最佳答案

尝试

(addresses returning addresses.map(_.id)) += (city, stateName, street1, street2, zip)

没有测试过,但显示 here

关于scala - 在 Slick 2.0 中插入后返回 AutoInc ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21894377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com