Advertisement
Guest User

Untitled

a guest
May 24th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. load.ivy("org.postgresql" % "postgresql" % "9.4-1206-jdbc4")
  2. load.ivy("com.typesafe.slick" %% "slick" % "3.1.1")
  3. load.ivy("org.slf4j" % "slf4j-nop" % "1.6.4")
  4.  
  5. import slick.driver.PostgresDriver
  6. import slick.driver.PostgresDriver.api._
  7. import scala.concurrent.ExecutionContext.Implicits.global
  8. import slick.jdbc.GetResult._
  9. import scala.concurrent.Future
  10. import scala.concurrent.Await
  11. import scala.concurrent.duration.Duration
  12.  
  13. val jdbcUrl = "jdbc:postgresql://localhost/mydatabase?user=username&password=userpass"
  14. val jdbcDriverClass = "org.postgresql.Driver"
  15. val db = Database.forURL(jdbcUrl, driver = jdbcDriverClass)
  16.  
  17. val createFoo: DBIO[Int] = sqlu"create table foo(name varchar)"
  18. val dropFoo: DBIO[Int] = sqlu"drop table foo"
  19. def insertFoo(name: String): DBIO[Int] = sqlu"insert into foo values ($name)"
  20. val selectFoo: DBIO[Seq[String]] = sql"select name from foo".as[String]
  21.  
  22. Await.result(db.run(createFoo), Duration(5, "seconds"))
  23. Await.result(db.run(insertFoo("air")), Duration(5, "seconds"))
  24. Await.result(db.run(insertFoo("fire")), Duration(5, "seconds"))
  25. Await.result(db.run(insertFoo("earth")), Duration(5, "seconds"))
  26. Await.result(db.run(insertFoo("water")), Duration(5, "seconds"))
  27. Await.result(db.run(selectFoo map {xs => xs foreach println }), Duration(5, "seconds"))
  28. Await.result(db.run(dropFoo), Duration(5, "seconds"))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement