草庐IT

mysql - Play 2.0 Complex join query如何解析(Anorm)

我正在使用play2.0框架编写网站。我在解析结果时遇到问题。这个对mysqldb的请求获取每集添加到数据库的所有链接(每集可以有几个)以及关于剧集和动漫的所有信息。deflastReleasedLink(limit:Long=5):List[(((Episode,Anime),Link),Genre)]={DB.withConnection{implicitc=>SQL("""select*fromyas_episodesasainnerjoinanimeasbona.ep_anime_id=b.idleftouterjoinyas_linksascona.ep_id=c.ep_id

mysql - 如何正确使用Scala Play Anorm和Option[String]插入NULL SQL

当Option[String]为None时,插入Option[String]的正确方法是什么?下面的代码插入一个空字符串,这与mysql中的NULL不同。是否只能根据partnerCode的内容预先构建SQL字符串?叹气……不正常……DB.withConnection{implicitconnection=>valid:Option[Long]=SQL("""INSERTINTOusers(email,partner_code,is_active,created,pass)VALUES({email},{partnerCode},0,NOW(),{pass})""").on('emai

mysql - 玩Scala Anorm一对多关系

来自playanorm,createamodelfromjsonwithoutpassinganormPKvalueinthejson我正在尝试将Seq[Address]添加到案例类中,例如caseclassUser(id:Pk[Long]=NotAssigned,name:String="",email:String="",addresses:Seq[Address])Address是一个包含三个字符串的简单对象/类。一个用户可以有多个地址,我如何在findAll中获取所有地址以及用户。deffindAll():Seq[User]={Logger.info("select*fromp

mysql - 使用 Anorm 批量插入具有许多列的表

我正在尝试使用Anorm(在playframework2.3.1中)对MySQL数据库表进行批量插入。我正在构建的应用程序除了需要批量数据插入外,还有一个标准的Web前端,我想尝试将逻辑保持在同一个软件堆栈上。插入只会进入相同的几个表。一次要插入的行数将达到数百,可能会达到数千,我预计由于anorm/mysql/其他限制,我可能需要在某个时候限制插入的行数。我使用的MySQL驱动是mysql-connector-java-5.1.31下面是一个简化的用例。使用表格:CREATETABLEtable1(col1INTEGERNOTNULL,col2BIGINT,col3VARCHAR(2

mysql - Anorm & MySQL SHA1 密码加密与 Mysql Workbench 命令不同

在我的PlayFrameworkScala项目中,我使用MySQL作为数据库。在我的数据库中,我有一个名称为PASSWORD的列。当他们在我的项目中创建新用户时,我会将用户密码存储在此列中。我在插入用户值时对密码字段使用SHA1加密。如果我直接从MySQLWorkbench在我的数据库中运行该命令,它会将不同的加密字符串存储在我的PASSWORD列中。在MySqlWorkbench中运行命令INSERTintouser('PASSWORD')VALUES(SHA1('hello'));此SQL查询在PASSWORD字段中插入aaf4c61ddcc5e8a2dabede0f3b482cd

mysql - 使用 Anorm 没有选择结果时如何执行代码?

当有记录匹配WHERE子句时,这段代码工作正常:valpinfo=SQL("SELECT*FROMtableNameWHEREid={id}").on("id"->"scala")pinfo().map{row=>println("havesomething")//runswhenselected}什么都没有选择时会发生什么?当没有从MySQL中选择记录时,我想打印以下内容。println("nothingisselected")//ifnorowcomes 最佳答案 SQL(...)()返回一个Stream[SqlRow]并且流有

mysql - Scala 异常检索插入的 id

我有一个id字段带有autoid的表。插入带有异常的行后,我想检索生成的ID。有什么想法吗?SQL("""insertintoaccom(id,places,lat,lon,permaname,country,defaultLanguage)values({places},{lat},{lon},{permaname},{country},{defaultLanguage})""").on('id->id,'places->places,'lat->lat,'lon->lon,'permaname->permaname,'country->country,'defaultLanguag

java - play scala 中 Magic 的 ColumnNotFound 问题

我得到一个“play.exceptions.JavaExecutionException:ColumnNotFound(comments.id)”在一段代码中尝试迁移到MySql而不是memorydb。Magic对Postgres的支持是几乎为零。演变:createtablecomments(idbigint(20)NOTNULLAUTO_INCREMENT,sourcevarchar(255)NOTNULL,targetvarchar(255)NOTNULL,contenttextNOTNULL,datebigintNOTNULL,PRIMARYKEY(id));模型:casecla

mysql - Anorm 中的原子 MySQL 事务

我写了一个简单的命中计数器,它使用Anorm更新MySQL数据库表。我希望交易是原子的。我认为最好的方法是将所有SQL字符串连接在一起并执行一个查询,但这似乎不适用于Anorm。相反,我将每个选择、更新和提交放在不同的行中。这行得通,但我忍不住认为他们一定是更好的方法。privatedefincrementHitCounter(urlName:String){DB.withConnection{implicitconnection=>SQL("starttransaction;").executeUpdate()SQL("select@hits:=hitsfromcontent_url