在我們的開發工作中,我們經常需要進行資料的插入,那麼資料的插入如何保證每條資料有個唯一的標識呢?這個時候,我們就需要主鍵,主鍵是不可重複的。那麼,在mysql和oracle中,我們需要怎麼保證插入的資料不重複呢?
在平常的需求開發中,我們經常會使用到mybatis框架。那麼,今天就結合mybatis框架,來說說怎麼插入主鍵?怎麼保證每條資料的唯一。
1:mysql中使用mybatis的寫法:使用主鍵自增
insert into user (
username,
password,
name,
email,
phone,
addr,
state,
code
) values(#,
#,#,
#,#,
#,#,
#)
主要有三個引數:
1):usegeneratedkeys="true" 設定主鍵自增
2):keyproperty="id" 對應的物件
3):keycolumn = "id" 對應的資料庫字段,預設對應表的第乙個字段。
2:oracle中mybatis的寫法:使用序列
建立序列:
create sequence useridseq
minvalue 1
start with 1
maxvalue 99999999
increment by 1
cache 10
插入語句寫法:
insert into user (
id,username,
password,
name,
email,
phone,
addr,
state,
code
) values
(useridseq.nextval
#,#,
#,#,
#,#,
#,#)
總結:以上總結了oracle和mysql中插入主鍵的寫法。
知識就是要不斷的學習,不斷的複習,才會記憶的更加的深刻。加油,美好的風景一直在路上!
mysql 主鍵自增語句 MySQL 自增主鍵
以下僅考慮 innodb 儲存引擎。自增主鍵有兩個性質需要考慮 單調性每次插入一條資料,其 id 都是比上一條插入的資料的 id 大,就算上一條資料被刪除。連續性插入成功時,其資料的 id 和前一次插入成功時資料的 id 相鄰。自增主鍵的單調性 為何會有單調性的問題?這主要跟自增主鍵最大值的獲取方式...
MySQL設定主鍵自增和非主鍵自增
mysql 每張表只能有1個自動增長字段,這個自動增長字段即可作為主鍵,也可以用作非主鍵使用,但是請注意將自動增長字段當做非主鍵使用時必須必須為其新增唯一索引,否則系統將會報錯。例如 將自動增長字段設定為主鍵 create table t1 id int auto increment primary...
mysql的自增主鍵
autotest表是測試表 mysql版本為5.7 結構如下 1.insert into指定自增主鍵的值時,自增主鍵會變嗎?以下是表中資料的初始值 接著插入自增主鍵9 如果insert指定自增主鍵的值不會導致auto increment值的變化的話,那麼接著不指定自增主鍵的值執行insert語句時,...