Oracle與Mysql自動增長列(id)的區(qū)別
這里所說的自動增長列,主要是指一個表中主鍵id的自動增長。
Oracle與Mysql不同,不能在CREATE建立表時設置自動增長列功能。
Oracle必須通過創(chuàng)建sequence序列來實現自動增加列的功能。
首先要建立序列(當然必須要先建好表,添加好主鍵約束,這列假設約束名為test_sequence)
create sequence test_sequence
[increment by 1]--增長的步長
[start with 1]--從幾開始增長
[maxvalue 100]--增長的最大值
[nomaxvalue]--不設最大值
[cycle|nocycle];--循環(huán)增長/不循環(huán)增長
定義了sequence以后就可以在insert語句中使用test_sequence.nextval和test_sequence.currval。
test_sequence.currval返回當前sequence的值,但必須在第一次初始化test_sequence.nextval后才能使用test_sequence.currval。
test_sequence.nextval會增加sequence的值,并返回增加后的sequence的值。
然后可以alter修改sequence序列,來改變自動增加的方式。
alter sequence test_sequence increment by 1 ...;后面的選項跟建表時一樣。
還可以用drop刪除sequence序列。
drop sequence test_sequence;
Mysql先對Oracle來說就簡單多了,可以在建表時進行設置。
create table( id int(10) auto_increment primary key) auto_increment=1;
auto_increment=1設置自動增長列從1開始
- 淺談Mysql、SqlServer、Oracle三大數據庫的區(qū)別
- mybatis foreach批量插入數據:Oracle與MySQL區(qū)別介紹
- 淺析Oracle和Mysql分頁的區(qū)別
- 簡述MySQL與Oracle的區(qū)別
- Oracle10個分區(qū)和Mysql分區(qū)區(qū)別詳解
- Oracle、MySQL和SqlServe三種數據庫分頁查詢語句的區(qū)別介紹
- Oracle 和 mysql的9點區(qū)別
- 解析mysql與Oracle update的區(qū)別
- MySQL與Oracle的語法區(qū)別詳細對比
- Oracle與Mysql主鍵、索引及分頁的區(qū)別小結
- mysql和oracle的區(qū)別小結(功能性能、選擇、使用它們時的sql等對比)
相關文章
Oracle數據庫連接并訪問Microsoft?SQL?Server數據庫操作步驟
近期在項目中客戶軟件升級,舊版本的數據庫用的SQL Server而新版本換為了Oracle,這篇文章主要給大家介紹了關于Oracle數據庫連接并訪問Microsoft?SQL?Server數據庫的操作步驟,需要的朋友可以參考下2024-08-08
Oracle固定執(zhí)行計劃之SQL PROFILE概要文件詳解
概要文件,就是一份描述如何使用系統(tǒng)的資源(主要是CPU資源)的配置文件,這篇文章主要介紹了Oracle固定執(zhí)行計劃之SQL PROFILE概要文件 ,需要的朋友可以參考下2018-10-10
win7 64位操作系統(tǒng)中Oracle 11g + plsql安裝教程詳解(圖解)
這篇文章主要介紹了win7 64位操作系統(tǒng)中Oracle 11g + plsql安裝教程詳解(圖解),詳細的介紹了Oracle 11g 安裝的步驟,有興趣的可以了解一下。2017-04-04
Oracle通過procedure調用webservice接口的全過程
存儲過程是一組為了完成特定功能的sql語句集合,經過編譯后存儲在數據庫中,用戶通過制定存儲過程的名字并給出參數(如果該過程帶有參數)來執(zhí)行他,本文介紹了Oracle通過procedure調用webservice接口的全過程,需要的朋友可以參考下2024-07-07

