मैं एक दशमलव एसक्यूएल प्रकार बनाने के लिए स्लिम कैसे कहूं जो decimals के लिए अनुमति देता है?
ऐसा लगता है कि डिफ़ॉल्ट रूप से Slick decimals के लिए अनुमति नहीं देता है जिसे मैंने नीचे दिए गए कोड के साथ देखा है। यह MySQL में डेटा प्रकार decimal(10,0)
के साथ एक कॉलम बनाता है।स्कैला स्लिक/ScalaQuery BigDecimal दशमलव बनाता है (10,0) decimals कैसे अनुमति दें?
मेरे पास मेरी स्काला कोड में निम्नलिखित मॉडल:
import scala.slick.driver.MySQLDriver.simple._
case class TimeType(id: Option[Int], name: String,
employeeMultiplier: BigDecimal, employerMultiplier: BigDecimal)
object TimeTypes extends Table[TimeType]("timeType") {
def id = column[Int]("id", O.PrimaryKey, O.AutoInc)
def name = column[String]("name")
def employeeMultiplier = column[BigDecimal]("employeeMultiplier")
def employerMultiplier = column[BigDecimal]("employerMultiplier")
def * = id.? ~ name ~ employeeMultiplier ~ employerMultiplier <> (TimeType, TimeType.unapply _)
}
स्टार्टअप के दौरान मैं स्लिक का उपयोग कर इस तालिका बनाने के जब तक यह पहले से ही इस कोड
...
lazy val database = Database.forDataSource(DB.getDataSource())
database.withSession {
if (MTable.getTables("timeType").list.isEmpty) {
TimeTypes.ddl.create
...
ग्रेट, खूबसूरती से धन्यवाद। – Farmor
लगता है कि Slick 3+ के साथ 'O.DBType' के बजाय' O.SqlType' का उपयोग करना चाहिए। – michaJlS