主頁 > 知識庫 > 詳解Mysql和Oracle之間的誤區(qū)

詳解Mysql和Oracle之間的誤區(qū)

熱門標(biāo)簽:html地圖標(biāo)注并導(dǎo)航 400電話辦理服務(wù)價(jià)格最實(shí)惠 催天下外呼系統(tǒng) 大豐地圖標(biāo)注app 南太平洋地圖標(biāo)注 北京金倫外呼系統(tǒng) 400電話變更申請 呂梁外呼系統(tǒng) 武漢電銷機(jī)器人電話

本質(zhì)區(qū)別

  • Oracle數(shù)據(jù)庫是一個(gè)對象關(guān)系數(shù)據(jù)庫管理系統(tǒng)(收費(fèi))
  • MySQL是一個(gè)開源的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(免費(fèi))

數(shù)據(jù)庫的安全性

  • mysql使用三個(gè)參數(shù)來驗(yàn)證用戶,即用戶名,密碼和位置
  • Oracle使用了更多的安全功能,如用戶名,密碼,配置文件,本地身份驗(yàn)證,外部身份驗(yàn)證,高級安全增強(qiáng)功能等

權(quán)限

MySQL的權(quán)限系統(tǒng)是通過繼承形成的分層結(jié)構(gòu)。權(quán)限授于高層時(shí),其他低層隱式繼承被授于的權(quán)限,當(dāng)然低層也可改寫這些權(quán)限。

按授權(quán)范圍不同,MySQL有以下種授權(quán)方式:

1、全局;

2、基于每個(gè)主機(jī);

3、基于表;

4、基于表列。

每一級在數(shù)據(jù)庫中都有一個(gè)授權(quán)表。當(dāng)進(jìn)行權(quán)限檢查時(shí),MySQL從高到低檢查每一張表,低范圍授權(quán)優(yōu)先于高范圍授權(quán)。

與Oracle不同,MySQL沒有角色的概念。也就是說,如果對一組用戶授于同樣的權(quán)限,需要對每一個(gè)用戶分別授權(quán)。

模式遷移

模式包含表、視圖、索引、用戶、約束、存儲過程、觸發(fā)器和其他數(shù)據(jù)庫相關(guān)的概念。多數(shù)關(guān)系型數(shù)據(jù)庫都有相似的概念。

包含內(nèi)容如下:

1.模式對象的相似性;

2.模式對象的名稱;

3.表設(shè)計(jì)時(shí)的關(guān)注點(diǎn);

4.多數(shù)據(jù)庫整合;

5.MySQL模式整合的關(guān)注點(diǎn)。

模式對象的相似性

就模式對象,Oracle和MySQL存儲諸多的相似,但也有一些不同

模式對象的名稱

Oracle是大小寫不敏感的,并且模式對象是以在寫時(shí)行存儲。在Oracle的世界中,列、索引、存儲過程、觸發(fā)器以及列別名都是大小寫不敏感,并且在所有平臺都是如此。MySQL是大小寫敏感的,如數(shù)據(jù)庫相對的存儲路徑、表對應(yīng)的文件都是如此

當(dāng)把關(guān)鍵字用引號引起來時(shí),Oracle和MySQL都允許把這些關(guān)鍵字用于模式對象。但MySQL對于一些關(guān)鍵字,不加引號也行。

表設(shè)計(jì)的關(guān)注點(diǎn)

1、字符數(shù)據(jù)的類型;

2、列默認(rèn)值。

3.字符數(shù)據(jù)類型

(1) Oracle支持4種字體類型:CHAR、NCHAR、NVARCHAR2和VARCHAR2。CHAR和NCHAR的最大長度為2000字節(jié),

NVARCHAR2和VARCHAR2最大長度為4000字節(jié)。

(2)MySQL和Oracle在字符型數(shù)據(jù)保存和讀取上存在一些不同。MySQL的字符類型,如CHAR和VARCHAR的長度小于65535字節(jié)。Oracle支持4種字體類型:C HAR、NCHAR、NVARCHAR2和VARCHAR2。CHAR和NCHAR的最大長度為2000字節(jié),NVARCHAR2和VARCHAR2最大長度為4000字節(jié)。

MySQL會處理列默認(rèn)值,不允許他為空,這點(diǎn)和Oracle不同。在Oracle中如果向表插入數(shù)據(jù),需要對有所有不允許為NULL列的值。

多數(shù)據(jù)庫遷移

如果多個(gè)MySQL數(shù)據(jù)庫位于同一個(gè)數(shù)據(jù)庫服務(wù)上,支持遷移。

數(shù)據(jù)存儲概念

MySQL的數(shù)據(jù)庫對應(yīng)于服務(wù)器上數(shù)據(jù)目錄內(nèi)的了目錄,這一數(shù)據(jù)存儲方式與多數(shù)據(jù)數(shù)據(jù)庫不同,也包括Oracle。數(shù)據(jù)庫中的表對應(yīng)一個(gè)或者多個(gè)數(shù)據(jù)庫目錄下的文件,并取表存儲時(shí)的存儲引擎。

一個(gè)Oracle數(shù)據(jù)庫包含一個(gè)或者多個(gè)表空間。表空間對應(yīng)數(shù)據(jù)在磁盤上的物理存儲。表空間是從一個(gè)或者多個(gè)數(shù)據(jù)文件開始構(gòu)建的。數(shù)據(jù)文件是文件系統(tǒng)中的文件或者原始存儲的一塊空間。

語法上的區(qū)別

主鍵:

  • mysql一般使用自動(dòng)增長類型,在創(chuàng)建表的時(shí)候指定表的主鍵為auto increment,主鍵就會自動(dòng)增長。
  • Oracle中沒有自動(dòng)增長,主鍵一般使用序列,插值時(shí)依次賦值即可

引號問題:

  • Oracle不使用雙引號,會報(bào)錯(cuò)
  • mysql則對引號沒有限制

分頁查詢:

  • mysql分頁查詢使用關(guān)鍵字limit來實(shí)現(xiàn)
  • Oracle沒有實(shí)現(xiàn)分頁查詢的關(guān)鍵字,實(shí)現(xiàn)起來較復(fù)雜,在每個(gè)結(jié)果集中只有一個(gè)rownum字段標(biāo)明它的位置,并且只能用rownum=某個(gè)數(shù),不能用rownum>=某個(gè)數(shù),因?yàn)镽OWNUM是偽列,在使用時(shí)所以需要為ROWNUM取一個(gè)別名,變成邏輯列,然后來操作

數(shù)據(jù)類型:

  • mysql中的整型:int(),字符串類型:varchar()
  • Oracle中的整形:number(),字符串類型:varchar2()

以上就是詳解Mysql和Oracle之間的誤區(qū)的詳細(xì)內(nèi)容,更多關(guān)于Mysql和Oracle之間的誤區(qū)的資料請關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • SpringBoot多數(shù)據(jù)庫連接(mysql+oracle)的實(shí)現(xiàn)
  • 詳解MySQL實(shí)時(shí)同步到Oracle解決方案
  • MySQL版oracle下scott用戶建表語句實(shí)例
  • mysql、oracle默認(rèn)事務(wù)隔離級別的說明
  • MyBatis JdbcType 與Oracle、MySql數(shù)據(jù)類型對應(yīng)關(guān)系說明
  • mysql和oracle的區(qū)別小結(jié)(功能性能、選擇、使用它們時(shí)的sql等對比)
  • mysql類似oracle rownum寫法實(shí)例詳解
  • 淺談Mysql、SqlServer、Oracle三大數(shù)據(jù)庫的區(qū)別
  • Oracle更換為MySQL遇到的問題及解決

標(biāo)簽:西寧 自貢 麗水 迪慶 龍巖 無錫 徐州 南充

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《詳解Mysql和Oracle之間的誤區(qū)》,本文關(guān)鍵詞  詳解,Mysql,和,Oracle,之,間的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《詳解Mysql和Oracle之間的誤區(qū)》相關(guān)的同類信息!
  • 本頁收集關(guān)于詳解Mysql和Oracle之間的誤區(qū)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章