當我們插入一條資料的時候,我們很多時候都想立刻獲取當前插入的主鍵值返回以做它用。我們通常的做法有如下幾種:
1. 先 select max(id) +1 ,然後將+1後的值作為主鍵插入資料庫;
2. 使用特定資料庫的 auto_increment 特性,在插入資料完成後,使用 select max(id) 獲取主鍵值;
3. 但要獲取此id,最簡單的方法就是在查詢之後select @@indentity。
sql**:
insertinto 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...