2016-01-29 4 views
0

У меня есть следующий код воспроизведения/слайка 3.0, который читает всю таблицу. Он хорошо работает с тем исключением, что SQL оператор не добавляет order by (хотя это относится sortBy Что может быть проблемаPlay Slick: выберите * из таблицы игнорирует sortBy

def readMany = { 
    val db = Database.forConfig("dbconfig") 
    var list = new ListBuffer[UserVO]() 
    try { 
     val users = TableQuery[UserDB] 
     val action = users.result 
     users.sortBy(_.userid) 
     val future = db.run(action).map(_.foreach { 
     case (u) => list += u 
     }) 
     val result = Await.result(future, 10 seconds) 
     println(action.statements.head) // <-- prints "select userid,col1,col2 from users" 
    } finally db.close 
    list 
    } 

ответ

0

Это как использовать SortBy:.?

def readMany = { 
    val db = Database.forConfig("dbconfig") 
    var list = new ListBuffer[UserVO]() 
    try { 
     val users = TableQuery[UserDB] 


     val action = users.sortBy(_.userid).result <-- sortBy example 

     val future = db.run(action).map(_.foreach { 
     case (u) => list += u 
     }) 
     val result = Await.result(future, 10 seconds) 
     println(action.statements.head) 
    } finally db.close 
    list 
    }