slick 3.0 - Is it possible to create an "infinite" stream from a database table using Akka Stream

I'm playing with Akka Streams 2.4.2 and am wondering if it's possible to setup a stream which uses a database table for a source and whenever there is a record added to the table that record is materialized and pushed downstream?UPDATE: 2/23/16I've implemented the solution from @PH88. Here's my table definition:case class Record(id: Int, value: String)class Records(tag: Tag) extends Table[Record](tag, "my_stream") { def id = column[Int]("id") def value = column[String]("value") def * = (id, value) <> (Record.tupled, Record.unapply)}Her...Read more

Slick 3 Updates with Optional Columns

Using Slick 3, I want to update my row depending on the property provided by the user. Say, I have 2 properties email and name. If email and name are provided I will update both properties in the database. If either one is provided I will only update the one provided and leave the other untouch.I found what I want here,Conditonally UPDATE fields with Slick String interpolationbut I do not want to manipulate the query string directly. Is this the only way? I prefer to use filter and update methods. Thanks...Read more

Slick 3.0.0 and Scala 2.10.4

I was trying to create a scala program with slick 3.0 and I am getting the following error:Error:scalac: bad symbolic reference. A signature in BasicDriver.class refers to term typesafein package com which is not available.It may be completely missing from the current classpath, or the version onthe classpath might be incompatible with the version used when compiling BasicDriver.class.I am using scala 2.10.4 and slick 2.10-3.0.0-RC1 and my IDE is IDEA 14.0.3 community editionAny clue about this compilation error will be appreciated.Thanks a lot...Read more

Getting result from a database sequence in Slick 3.0.0

I am trying to get the result of a query which is executed as a part of a sequence of actions passed as a parameter to DBIO.sequence() method of Slick 3.0. Below is the code snippet for the same.val query = for { (tt, th) <- tmpTrades join TableQuery[TrdHeader] on (_.tradeNum === _.tradeNum) } yield (tt.tradeNum, th.internalInd, th.tradeStatusInd, th.tradeDt, th.tradeInputDt, th.lastModifyDt)val queryAction = query.resultval actions = Seq(tmpTrades.schema.create, tmpTrades ++= trades.toSeq: _*, queryAction, tmpTrades.schema.drop)val result...Read more