MySQL和Oracle的區別與不同

来源:https://www.cnblogs.com/qinghuang-sunny/archive/2019/08/12/douer.html
-Advertisement-
Play Games

http://pic62.nipic.com/file/20150318/8684504_093611837474_2.jpg ...



一、mysql與Oracle的相同點:

1、都是關係型資料庫管理系統(MySQL開放源碼)

2、都是目前很流行的資料庫(Oracle以分散式為核心);

二、MySQL、Oracle各自特點:

1、Oracle自身特點:

(1)、完整的數據管理功能:

1)、數據的大量性;

2)、數據的保存的持久性;

3)、數據的共用性;

4)、數據的可靠性;

(2)、完備關係的產品 :

1)、信息準則---關係型DBMS的所有信息都應在邏輯上用一種方法,即表中的值顯式地表示;

2)、保證訪問的準則;

3)、視圖更新準則---只要形成視圖的表中的數據變化了,相應的視圖中的數據同時變化;

4)、數據物理性和邏輯性獨立準則;

(3)、分散式處理功能: ORACLE資料庫自第5版起就提供了分散式處理能力,到第7版就有比較完善的分散式資料庫功能了,一個ORACLE分散式資料庫由oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的關係型產品構成。

4、用Oracle能輕鬆的實現數據倉庫的操作 Oracle自身的優點:

1、可用性強;

2、可擴展性強;

3、資料庫安全性強;

4、穩定性強;

MySQL自身特點:

       MySQL因為其速度、可靠性和適應性而備受關註。大多數人都認為在不需要事務化處理的情況下,MySQL是管理內容最好的選擇。

三、兩者資料庫不同點:

1.單引號的處理 Mysql里可以用雙引號包起字元串,Oracle里只可以用單引號包起字元串。在插入和修改字元串前必須做單引號的替換:把所有出現的一個單引號替換成兩個單引號。

2.自動增長的數據類型處理 Mysql是一個自動增長的數據類型,插入數據的時候,不需要管理,它自己會自動增長,Oracle不支持自動增長的數據類型,通過建立一個自動增長的序列號來完成自動增長。

3.sql語句的擴展和靈活性 Mysql對sql語句有很多非常實用而方便的擴展,比如limit功能,insert可以一次插入多行數據,select某些管理數據可以不加from。 Oracle在這方面感覺更加穩重傳統一些。

4.事物提交方式 oracle預設不自動提交,需要用戶手動提交。 Mysql預設是自動提交。不支持事物。 Mysql預設自動提交,也就是你提交一個query,它就直接執行,我們可以通過

set autocommit=0 禁止自動提交
set autocommit=1 開啟自動提交

5.Oracle是大型資料庫而Mysql是中小型資料庫,Oracle市場占有率達40%,Mysql只有20%左右,同時Mysql是開源的而Oracle價格非常高。
6. Oracle支持大併發,大訪問量,是OLTP(On-Line Transaction Processing聯機事務處理系統)最好的工具。
7. 安裝所用的空間差別也是很大的,Mysql安裝完後才152M而Oracle有3G左右,且使用的時候Oracle占用特別大的記憶體空間和其他機器性能。
8. 長字元串的處理 長字元串的處理ORACLE也有它特殊的地方。INSERT和UPDATE時最大可操作的字元串長度小於等於4000個單位元組, 如果要插入更長的字元串, 請考慮欄位用CLOB類型,方法借用ORACLE里自帶的DBMS_LOB程式包。插入修改記錄前一定要做進行非空和長度判斷,不能為空的欄位值和超出長度欄位值都應該提出警告,返回上次操作。
9. 空字元的處理 Mysql的非空欄位也有空的內容,ORACLE里定義了非空欄位就不容許有空的內容。按Mysql的NOT NULL來定義Oracle表結構, 導數據的時候會產生錯誤。因此導數據時要對空字元進行判斷,如果為NULL或空字元,需要把它改成一個空格的字元串。
10.字元串的模糊比較 Mysql里用 欄位名 like ‘%字元串%’;
Oracle里也可以用 欄位名 like ‘%字元串%’ 但這種方法不能使用索引, 速度不快。
11.翻頁的SQL語句的處理
MySQL處理翻頁的SQL語句比較簡單,用LIMIT開始位置,記錄個數;PHP里還可以用 SEEK定位到結果集的位置。Oracle處理翻頁的SQL語句就比較繁瑣了。每個結果集只有一個ROWNUM欄位標明它的位置,並且只能用ROWNUM<100,不能用ROWNUM>80。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • SQL 通配符 在搜索資料庫中的數據時,SQL 通配符可以替代一個或多個字元。 SQL 通配符必須與 LIKE 運算符一起使用。 在 SQL 中,可使用以下通配符: [^charlist]或者[!charlist] 原始的表 (用在例子中的): Persons 表: 使用 % 通配符 例子 1 現在 ...
  • Oracle資料庫四種數據完整性約束 1.實體完整性 同樣的數據不能重覆插入(1)採取什麼措施保證實體完整性?我們可以給表創建主鍵約束嗎,主鍵保證了數據的唯一性,主鍵可以保證同一條記錄只能插入一次。一般情況下,只有一個欄位可以添加主鍵,此欄位一般是編號 2.域完整性 一般是對一個欄位的約束例如:學號 ...
  • 資料庫複習提綱之文字版(這個只是自己整理文案,答案是查的,勿噴,謝謝,希望給別人一些幫助) 1、Oracle和SQL server2005的區別 Oracle資料庫:Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關係資料庫管理系統。 它是在資料庫 ...
  • 環境描述: 雙節點RAC 資料庫:版本12.2.0.1 操作系統:linux 6.9 一、利用圖形化 準備好掛載點 cd /mkdir oggchown oracle:oinstall ogg chmod 775 /ogg 圖形化 asmca 我這裡是有問題,不知道什麼原因,做個記錄。後面手動掛載。 ...
  • 【查看mysql最大鏈接數】 MariaDB [(none)]> show variables like 'max_connections'; + + + | Variable_name | Value | + + + | max_connections | 151 | + + + + + + | ...
  • 記錄一下今天被坑了一下午的BUG 就從半個月前說起吧 當時..................................................................................................................... ... ...
  • Win7 Eclipse 搭建spark java1.8(lambda)環境:WordCount helloworld例子 ...
  • 列子: 一條語句實現將'a,b,c'拆分成'a','b','c'三條記錄。 一、REGEXP_SUBSTR函數的使用說明: Regexp_Substr(String,pattern,position,occurrence ,modifier )一共包含了五個參數: String:操作的字元串; pa ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...