<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="example.OrderMapper">
  <resultMap id="order" type="example.Order">
    <id column="id" property="id"/>
    <result column="customer_name" property="customerName"/>
    <result column="amount_cents" property="amountCents"/>
  </resultMap>
  <select id="find" resultMap="order">
    SELECT id, customer_name, amount_cents FROM purchase_order WHERE id = #{id}
  </select>
  <select id="findWrong" resultMap="order">
    SELECT id, customer_name, amount_cents FROM purchase_order WHERE id = #{id}
  </select>
  <select id="findManyAsOne" resultMap="order">
    SELECT id, customer_name, amount_cents FROM purchase_order ORDER BY id
  </select>
  <select id="stream" resultMap="order" fetchSize="1">
    SELECT id, customer_name, amount_cents FROM purchase_order ORDER BY id
  </select>
  <select id="backendPid" resultType="int" flushCache="true" useCache="false">
    SELECT pg_backend_pid()
  </select>
  <update id="updateAmount">
    UPDATE purchase_order SET amount_cents = #{amount} WHERE id = #{id}
  </update>
  <insert id="duplicate">
    INSERT INTO purchase_order VALUES (1, 'Duplicate', 0)
  </insert>
</mapper>
