1. 程式人生 > >筆記:mybatis-oracle使用序列自增

筆記:mybatis-oracle使用序列自增

先建立序列   seq_xxxx_detail

在mybatis中使用

<insert id="xxxx" parameterType="map">
<selectKey resultType="int"  keyProperty="id" order="BEFORE">
  SELECT  seq_xxxx_detail.nextval FROM DUAL
</selectKey>
insert into crmapp_business_detail
  (
   id,
   mobilephone,
   )
values
  (
   #{id}   ,
   #{mobilephone}                       
   )

</insert>

剛開始沒有加order="BEFORE",然後報了“無效的列1111”,搞了好久,因為明明記得之前是這樣用的,後來查了一下,說了時候mybatis多少版本之後需要加上這個。加了然後就好了。

剛開始直接是這樣寫的

<insert id="xxxx" parameterType="map">

insert into crmapp_business_detail
  (
   id,
   mobilephone
   )
values
  (
   seq_crmapp_business_detail.nextval   ,
   #{mobilephone}                       
   )
</insert>

但是一直報無效的列異常,後來用了上面的方法之後再用這個,居然又行了

相關推薦

筆記mybatis-oracle使用序列

先建立序列   seq_xxxx_detail在mybatis中使用<insert id="xxxx" parameterType="map"><selectKey resultType="int"  keyProperty="id" order="BEFO

Hibernate + Oracle 建立序列ID

1.建立自增序列 2.對ID建立觸發器 3.Userinfo.hbm.xml使得<generator class="increment"> 序列: CREATE SEQUENCE "SYSTEM"."SEQUENCE_ID" MINVALUE 1 MAXVALUE 9999999

oracle mybatis 批量插入 id

實現方案一: <!-- 使用sql 實現 --> <insert id="insertBatch" parameterType="java.util.List" useGeneratedKeys="false" > INSERT INTO WF_TASKT

oracle 實現 建立、刪除觸發器 序列

select * from YLXZ_PERSON insert into YLXZ_PERSON(name) VALUES('噓噓') DELETE from YLXZ_PERSON where name ='噓噓' update YLXZ_PERSON set id=NU

Oracle 建立序列

-- Create sequence create sequence ID_SEQUENCEminvalue 1maxvalue 9999999999999999999999999999start with 100001increment by 1cache 1000;ins

筆記MyBatis 使用 Java API配置

resultset type alias 然而 exe enabled 取數 actor comm 我們已經討論了各種MyBatis配置元素,如envronments、typeAlias和typeHandlers,以及如何使用XML配置它們。即使你想使用基於JavaAPI的

筆記MyBatis Mapper XML文件詳解 - 映射和參數

gin server 頂級 ctp columns ref acl 目標 對象傳遞 MyBatis 的真正強大在於它的映射語句,也是它的魔力所在。由於它的異常強大,映射器的 XML 文件就顯得相對簡單。如果拿它跟具有相同功能的 JDBC 代碼進行對比,你會立即發現省掉了將近

筆記MyBatis XML配置-typeAliases 內建別名表

short batis big int arraylist spa myba bottom one 別名 映射的類型 _byte byte _long long _short short _int int _integer int _double double _float

筆記MyBatis XML配置-typeHandlers 默認類型處理器

jdbc span decimal ade byte[] har bottom string jdb 類型處理器 Java 類型 JDBC 類型 BooleanTypeHandler java.lang.Boolean, boolean 數據

筆記MyBatis 其他特性

為我 進行 rri 展示 插件 筆記 public 獲取 註意 多行結果集映射成Map 如果你有一個映射語句返回多行記錄,並且你想以HashMap的形式存儲記錄的值,使用記錄列名作為key值,而記錄對應值或為value值。我們可以使用sqlSession.selectMa

mybatis 學習筆記mybatis SQL註入問題

spa onf concat http 控制臺 throws 檢查 src lec SQL 註入攻擊 首先了解下概念,什麽叫SQL 註入: SQL註入攻擊,簡稱SQL攻擊或註入攻擊,是發生於應用程序之數據庫層的安全漏洞。簡而言之,是在輸入的字符串之中註入SQL指令,在設計

Oracle ID

repl null num fault mar creat replace rim value 實現Oracle Id自增 1、方法一 create table app_student( id integer generated by default as ide

筆記MyBatis中$與#的區別

首先MyBatis中 $與#都是動態傳參 # 將傳入的資料都當成一個字串,會對自動傳入的資料加一個雙引號 $ 將傳入的資料直接顯示生成在sql中 # 佔位符號,能夠很大程度防止sql注入「語句的拼接」 $ sql拼接符號,無法防止Sql注入 如果使用在order by中就需要使用 $

csdn學習筆記lua繼承、索引

  Lua中類是物件,物件也是物件 物件: 所謂的物件,即屬性和方法。 相C/C++一樣使用類來訪問屬性和方法 Shape = { _width = 100, _height = 200, }; -- Shape._getArea = fu

oracle序列、刪、改、查及使用

----------------------------------------------------------------------建立序列:示例:CREATE SEQUENCE SEQ_SSSS #建立序列名為SEQ_SSSS的序列INCREMENT BY 1 #增值值為1(負數表示遞減,如-1)S

程式筆記MyBatis 動態SQL和模糊查詢

之前用mybatis在xml中寫sql語句用到過<if>標籤,但是不知道這是動態SQL(尷尬),最近空閒整理一下常用的動態SQL。好記性不如爛筆頭 以圖 t_user 表為例: 1. if 語句 根據 userNo 和 name 來查詢資料。如果userNo為空

mybatis 插入返回後的id

//serviceImpl int customerId = customerDao.insertDynamic(customer1); System.out.println("id===================="+customer1.getId());    useGenerate

筆記MyBatis逆向工程

MyBatis逆向工程生成程式碼 上程式碼 連結:https://pan.baidu.com/s/1IjQTNuAiRte6tVxTyVP5uw 密碼:ilhj 注意事項: 1.資料庫連線的資訊:驅

時獲取Mysql主鍵的值及Oracle主鍵的值

<insert> parameterType:引數型別,可以省略,  1、獲取自增主鍵的值:         mysql支援自增主鍵,自增主鍵值的獲取,mybatis也是利用statement.getGenreat

MYSQL實現序列

MYSQL實現Sequence   由於專案需求,需要實現Sequence效果,MYSQL中是不支援Sequence,只支援主鍵自增Increment,但也只是自增,而不能設定步長、開始索引、是否迴圈