歡迎您光臨本站 註冊首頁

· mysql和oracle的區別雜誌閱讀

Mysql和Oracle的區別

admin @ 2020-04-18 reply:0
  1. 1費用:MySQL是開源的專案(免費),Oracle資料庫產品是閉源同時也是收費的。

    Mysql是中小型資料庫,oracle是大型的

  2. 2MYSQL有自動增長的資料型別,插入記錄時不用操作此欄位,會自動獲得資料值。ORACLE沒有自動增長的資料型別,需要建立一個自動增長的序列號,插入記錄時要把序列號的下一個值賦於此欄位

  3. 3事務:MySQL對於事務預設是不支援的,只有某些儲存引擎中如:innodb可以支援。 而Oracle對於事務是完全支援,不管是OLTP還是OLAT都是支援的。

  4. 4MYSQL裡可以用雙引號包起字元串,ORACLE裡只可以用單引號包起字元串。在插入和修改字元串前必須做單引號的替換:把所有出現的一個單引號替換成兩個單引號

  5. 5分頁:MYSQL處理翻頁的SQL語句比較簡單,用LIMIT 開始位置, 記錄個數。ORACLE處理翻頁的SQL語句就比較繁瑣了。每個結果集只有一個ROWNUM欄位標明它的位置, 並且只能用ROWNUM<100, 不能用ROWNUM>80。

  6. 6日期:MYSQL日期欄位分DATE和TIME兩種,ORACLE日期欄位只有DATE,包含年月日時分秒資訊,用當前資料庫的系統時間為SYSDATE, 精確到秒。

  7. 7MYSQL裡用 欄位名 like '%字元串%',ORACLE裡也可以用 欄位名 like '%字元串%' 但這種方法不能使用索引, 速度不快,用字元串比較函式 instr(欄位名,'字元串')>0 會得到更精確的查詢結果。

  8. 8MYSQL的非空欄位也有空的內容,ORACLE裡定義了非空欄位就不容許有空的內容。按MYSQL的NOT NULL來定義ORACLE表結構, 導資料的時候會產生錯誤。因此導資料時要對空字元進行判斷,如果為NULL或空字元,需要把它改成一個空格的字元串。

  9. 91:MySQL的例項是使用者登入是系統分配給使用者的,而使用者必須是先在MySQL中建立好,然後登陸使用者mysql -u user_name -p然後使用show databases; 命令檢視資料庫,在使用 use database_name database; 選擇資料庫,這樣才可以對資料庫進行操作。簡單的關係就是:instance > database

    2:Oracle的例項是在建立資料庫時就預設建立好的,而使用者基於資料庫例項,例項之間可以沒有關係所以其中的使用者也不盡相同,你登入不同的例項就相當於登入了不同的資料庫,登陸的命令也能簡單sqlplus user_name/password@IP:port/instance_name 其中可以把IP地址,埠號,例項名寫在一個TNS檔案中取一個別名,登陸的時候輸入這個別名就行了。簡單的是:instance = database

  10. 10MySQL是單程序多執行緒,Oracle是多程序(在Windows下也是單程序),Windows 下只能使用一個使用者,或者你可以在不同使用者之間做切換,而Linux是多用 戶或者相同使用者可以同時連線作業系統

[admin via ] Mysql和Oracle的區別已經有476次圍觀

http://coctec.com/magazine/show-post-item-69.html