資料庫插入資料返回當前自增主鍵ID值的方法

2022-05-06 19:09:09 字數 642 閱讀 8194

當我們插入一條資料的時候,我們很多時候都想立刻獲取當前插入的主鍵值返回以做它用。我們通常的做法有如下幾種:

1. 先 select max(id) +1 ,然後將+1後的值作為主鍵插入資料庫;

2. 使用特定資料庫的 auto_increment 特性,在插入資料完成後,使用 select max(id) 獲取主鍵值;

3. 但要獲取此id,最簡單的方法就是在查詢之後select @@indentity。

sql**:

insert

into table_name (.....) values(......) select

@@identity

as id;

例如在ibatis中的一種用法(mysql資料庫):

<

insert

idparameterclass

>

<

selectkey

resultclass

="int"

keyproperty

="id"

>

select @@identity as id

selectkey

>

insert

>

Mybatis 插入資料返回自增主鍵

使用mybatis作為工具連線mysql,要求在插入資料之後返回自增主鍵 一開始也很迷惑,mybatis使用insert之後,成功返回的是1,失敗會報錯或返回0,主鍵去哪找來 後來知道mybatis可以把自增主鍵的值放到實體中返回 這是實體類的定義 實體類必須有乙個字段接收主鍵的值 public c...

oracle資料庫主鍵自增並且返回主鍵值

一 建立序列 1.1 直接在plsql中設定 1.2 命令建立 create sequence seq users 建立序列seq users increment by 1 步長,每次加1 start with 1 從1開始 minvalue 1 最小值 maxvalue 9999999 最大值 c...

Oracle資料庫插入多條資料,主鍵自增

while loop迴圈用法 插入100w資料 declare v num number 10 0 begin while v num 1000000 loop v num v num 1 insert into oom objmeta class id,obj name,orig id,obj a...