scalikejdbc 学习笔记(5)

常用增删改查操作:

import scalikejdbc._
import scalikejdbc.config._

object CommonOperation {
  def main(args: Array[String]): Unit = {
    DBsWithEnv("dev").setupAll()

    case class Emp(id: Int, name: String)

    DB autoCommit { implicit session =>
      sql"create table emp ( id int(20) not null AUTO_INCREMENT, name varchar(30),   primary key (id))".execute.apply()
    }

    val id = 1
    val name = "sky"
    val newName = "bill"

    DB localTx { implicit session =>
      sql"""insert into emp (name) values (${name})"""
        .update.apply()
      val idd = sql"insert into emp (name) values (${name})"
        .updateAndReturnGeneratedKey.apply()
      println("new insert: " + idd)
      sql"update emp set name = ${newName} where id = ${id}".update.apply()

      sql"delete emp where id = ${id}".update.apply()

      val emps: List[Emp] = sql"select id, name from emp".map(
        (rs: WrappedResultSet) => Emp(
          id = rs.int("id"),
          name = rs.string("name"))).list.apply()

      for (emp <- emps) {
        println(emp.id + "," + emp.name)
      }
    }

    DBsWithEnv("dev").closeAll()
  }
}

  

时间: 2024-10-10 22:07:55

scalikejdbc 学习笔记(5)的相关文章

scalikejdbc 学习笔记(3)

重用connection: package com.citi.scalikejdbc import scalikejdbc._ import scalikejdbc.config._ object ConnReuse { def main(args: Array[String]): Unit = { DBsWithEnv("dev").setupAll() case class User(id: Int, name: String, age: Int) val allColumns =

scalikejdbc 学习笔记(2)

使用scalikejdbc config (src\main\resources) # MySQL(dev) dev.db.default.driver="com.mysql.jdbc.Driver" dev.db.default.url="jdbc:mysql://192.168.1.151:3306/scalalearning?useUnicode=true&characterEncoding=UTF8" dev.db.default.user=&quo

scalikejdbc 学习笔记(1)

build.sbt: import sbt._ import Process._ import Keys._ EclipseKeys.createSrc := EclipseCreateSrc.Default + EclipseCreateSrc.Resource lazy val commonSettings = Seq( name := "ScalaLearning", version := "1.0", scalaVersion := "2.10.6

scalikejdbc 学习笔记(4)

Batch 操作 import scalikejdbc._ import scalikejdbc.config._ object BatchOperation { def main(args: Array[String]): Unit = { DBsWithEnv("dev").setupAll() case class User(id: Int, name: String, age: Int) val ls = List[User]( User(5, "aa",

vector 学习笔记

vector 使用练习: /**************************************** * File Name: vector.cpp * Author: sky0917 * Created Time: 2014年04月27日 11:07:33 ****************************************/ #include <iostream> #include <vector> using namespace std; int main

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则 用了几天时间看了一下开源框架Caliburn.Micro 这是他源码的地址http://caliburnmicro.codeplex.com/ 文档也写的很详细,自己在看它的文档和代码时写了一些demo和笔记,还有它实现的原理记录一下 学习Caliburn.Micro要有MEF和MVVM的基础 先说一下他的命名规则和引导类 以后我会把Caliburn.Micro的 Actions IResult,IHandle ICondu

jQuery学习笔记(一):入门

jQuery学习笔记(一):入门 一.JQuery是什么 JQuery是什么?始终是萦绕在我心中的一个问题: 借鉴网上同学们的总结,可以从以下几个方面观察. 不使用JQuery时获取DOM文本的操作如下: 1 document.getElementById('info').value = 'Hello World!'; 使用JQuery时获取DOM文本操作如下: 1 $('#info').val('Hello World!'); 嗯,可以看出,使用JQuery的优势之一是可以使代码更加简练,使开

[原创]java WEB学习笔记93:Hibernate学习之路---Hibernate 缓存介绍,缓存级别,使用二级缓存的情况,二级缓存的架构集合缓存,二级缓存的并发策略,实现步骤,集合缓存,查询缓存,时间戳缓存

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

Activiti 学习笔记记录(三)

上一篇:Activiti 学习笔记记录(二) 导读:上一篇学习了bpmn 画图的常用图形标记.那如何用它们组成一个可用文件呢? 我们知道 bpmn 其实是一个xml 文件