scalikejdbc

DB

case class DB(conn: Connection) extends LogSupport with Product with Serializable

Basic Database Accessor

Using DBSession:

import scalikejdbc._
case class User(id: Int, name: String)

using(connectionPool(context).borrow()) { conn =>

  val users = DB(conn) readOnly { session =>
    session.list("select * from user") { rs =>
      User(rs.int("id"), rs.string("name"))
    }
  }

  DB(conn) autoCommit { session =>
    session.update("insert into user values (?,?)", 123, "Alice")
  }

  DB(conn) localTx { session =>
    session.update("insert into user values (?,?)", 123, "Alice")
  }

}

Using SQL:

import scalikejdbc._
case class User(id: Int, name: String)

using(ConnectionPool.borrow()) { conn =>

  val users = DB(conn) readOnly { session =>
    SQL("select * from user").map { rs =>
      User(rs.int("id"), rs.string("name"))
    }.list.apply()
  }

  DB(conn) autoCommit { session =>
    SQL("insert into user values (?,?)").bind(123, "Alice").update.apply()
  }

  DB(conn) localTx { session =>
    SQL("insert into user values (?,?)").bind(123, "Alice").update.apply()
  }

}
Linear Supertypes
Serializable, Serializable, Product, Equals, LogSupport, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. DB
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. LogSupport
  7. AnyRef
  8. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DB(conn: Connection)

Type Members

  1. type RSTraversable = ResultSetTraversable

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def autoCommit[A](execution: (DBSession) ⇒ A): A

    Provides auto-commit session block.

    Provides auto-commit session block.

    A

    return type

    execution

    block

    returns

    result value

  8. def autoCommitSession(): DBSession

    Returns auto-commit session.

    Returns auto-commit session.

    returns

    session

  9. def autoCommitWithConnection[A](execution: (Connection) ⇒ A): A

    Provides auto-commit session block.

    Provides auto-commit session block.

    A

    return type

    execution

    block

    returns

    result value

  10. def begin(): Unit

    Begins a new transaction.

  11. def beginIfNotYet(): Unit

    Begins a new transaction if the other one does not already start.

  12. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  13. def close(): Unit

    Close the connection.

  14. def commit(): Unit

    Commits the current transaction.

  15. val conn: Connection

  16. def currentTx: Tx

    Returns the current transaction.

    Returns the current transaction. If the transaction has not started yet, IllegalStateException will be thrown.

    returns

    tx

  17. def describe(table: String): String

    Returns describe style string value for the table

    Returns describe style string value for the table

    table

    table name (with schema optionally)

    returns

    described information

  18. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  19. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  20. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  21. def getColumnNames(tableName: String, tableTypes: Array[String] = Array("TABLE", "VIEW")): List[String]

    Returns all the column names on the matched table name

  22. def getTable(table: String): Option[Table]

    Returns table information if exists

    Returns table information if exists

    table

    table name (with schema optionally)

    returns

    table information

  23. def getTableNames(tableNamePattern: String = "%", tableTypes: Array[String] = Array("TABLE", "VIEW")): List[String]

    Returns all the table information that match the pattern

    Returns all the table information that match the pattern

    tableNamePattern

    table name pattern (with schema optionally)

    returns

    table information

  24. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  25. def isTxAlreadyStarted: Boolean

    Returns is the current transaction already started.

    Returns is the current transaction already started.

    returns

    result

  26. def isTxNotActive: Boolean

    Returns is the current transaction is active.

    Returns is the current transaction is active.

    returns

    result

  27. def isTxNotYetStarted: Boolean

    Returns is the current transaction hasn't started yet.

    Returns is the current transaction hasn't started yet.

    returns

    result

  28. def localTx[A](execution: (DBSession) ⇒ A): A

    Provides local-tx session block.

    Provides local-tx session block.

    A

    return type

    execution

    block

    returns

    result value

  29. def localTxWithConnection[A](execution: (Connection) ⇒ A): A

    Provides local-tx session block.

    Provides local-tx session block.

    A

    return type

    execution

    block

    returns

    result value

  30. val log: Log

    Logger

    Logger

    Attributes
    protected
    Definition Classes
    LogSupport
  31. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  32. def newTx: Tx

    Starts a new transaction and returns it.

    Starts a new transaction and returns it.

    returns

    tx

  33. final def notify(): Unit

    Definition Classes
    AnyRef
  34. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  35. def readOnly[A](execution: (DBSession) ⇒ A): A

    Provides read-only session block.

    Provides read-only session block.

    A

    return type

    execution

    block

    returns

    result value

  36. def readOnlySession(): DBSession

    Returns read-only session.

    Returns read-only session.

    returns

    session

  37. def readOnlyWithConnection[A](execution: (Connection) ⇒ A): A

    Provides read-only session block.

    Provides read-only session block.

    A

    return type

    execution

    block

    returns

    result value

  38. def rollback(): Unit

    Rolls back the current transaction.

  39. def rollbackIfActive(): Unit

    Rolls back the current transaction if the transaction is still active.

  40. def showTables(tableNamePattern: String = "%", tableTypes: Array[String] = Array("TABLE", "VIEW")): String

    Returns table name list

    Returns table name list

    tableNamePattern

    table name pattern

    tableTypes

    table types

    returns

    table name list

  41. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  42. def tx: Tx

    Returns the current transaction.

    Returns the current transaction. If the transaction has not started yet, IllegalStateException will be thrown.

    returns

    tx

  43. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  44. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  45. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  46. def withinTx[A](execution: (DBSession) ⇒ A): A

    Provides within-tx session block.

    Provides within-tx session block.

    A

    return type

    execution

    block

    returns

    result value

  47. def withinTxSession(tx: Tx = currentTx): DBSession

    Returns within-tx session.

    Returns within-tx session.

    returns

    session

  48. def withinTxWithConnection[A](execution: (Connection) ⇒ A): A

    Provides within-tx session block.

    Provides within-tx session block.

    A

    return type

    execution

    block

    returns

    result value

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from LogSupport

Inherited from AnyRef

Inherited from Any

Ungrouped