обновление версии версии с 0.9.4 до 0.9.13 - PullRequest
0 голосов
/ 14 декабря 2018

Я обновляю свой проект с более старой версии Scala до последней, и сейчас у меня есть squeryl 0.9.4, и я обновляю его до 0.9.13.Мой проект скомпилирован и работает нормально, но я столкнулся с проблемой при извлечении данных из базы данных.

Мой запрос

**

val order: Option[OrderData] = {
        from(OrderSchema.orders) { o => {
          where(o.transactionId === transactionId) select(o)
        }} headOption
      }

**

Этот запрос генерирует запрос без имени столбца в операторе выбора.

Сгенерированный SQl, полученный из журналов postgresql:

привязка к S_5 2018-12-13 17: 28: 06.705 EET [3408] LOG: выполнить S_5: Выбрать из «OrderProductData» »OrderProductData1 "Где (" OrderProductData1 ". "ActionId" = $ 1) 2018-12-13 17: 28: 06.705 EET [3408] ДЕТАЛИ: параметры: $ 1 = '11000015'

Старый SQL, созданный с помощьюстарая версия -

, привязка к 2018-12-14 11: 51: 01.221 EET [3231] LOG: execute: выберите «OrderProductData16». «name» в качестве «OrderProductData16_name», «OrderProductData16». "количество »как« OrderProductData16_quantity »,« OrderProductData16 ».« lastModified »как« OrderProductData16_lastModified »,« OrderProductData16 ».« vatPercent »как« OrderProductData16_vatPercent »,« OrderProductData16 ».как "OrderProductData16_totalPrice", "OrderProductData16". "id" как "OrderProductData16_id", "OrderProductData16". "status" как "OrderProductData16_status", "OrderProductData16". "productEan »как« OrderProductData16_productEan »,« OrderProductData16 ».« productId »как« OrderProductData16_productId »,« OrderProductData16 ».« unitPrice »как« OrderProductData16_unitPrice »,« OrderProductData16 »цена продукта»как «OrderProductData16_discount», «OrderProductData16». «owQuantity» как «OrderProductData16_owQuantity», «OrderProductData16».-14 11: 51: 01.221 EET [3231] ДЕТАЛИ: параметры: $ 1 = '11000015' Как видите, в запросе нет столбцов, поэтому я получаю результат со значениями по умолчанию, определенными в моем классе модели.

Я ничего не изменил в конфигурации, потому что она была скомпилирована и запущена.Я просто изменил следующий код инициализации в своем классе схемы.

Новый код:

val myTables = new scala.collection.mutable.ArrayBuffer[Table[_]]
  override protected def table[T](name: String)(implicit manifestT: Manifest[T], ked: OptionalKeyedEntityDef[T,_]): Table[T] = {
    val t = super.table[T](name)(manifestT,ked)
    myTables.append(t)
    t
  }

старый код был:

val myTables = new scala.collection.mutable.ArrayBuffer[Table[_]]
  override protected def table[T](name: String)(implicit manifestT: Manifest[T]): Table[T] = {
    val t = super.table[T](name)(manifestT)
    myTables.append(t)
    t
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...