MySQL与Oracle的区别
MySQL與Oracle的區別
1.收費區別
MySQL是輕量型數據庫,開源免費。Oracle是收費的而且價格非常高;
2.實例區別
MySQL一個實例可以操作多個庫,而Oracle一個實例只能對應一個庫;
3.軟件大小區別
MySQL安裝完后300M而Oracle有3G;
4.主鍵管理區別
mysql一般使用自動增長類型,而Oracle則需要使用序列對象;
5.字符串處理區別
mysql里可以用單引號或雙引號包起字符串,Oracle只可以用單引號包起字符 串;
6.分頁查詢區別
分頁的SQL語句:mysql用limit,而Oracle需要使用內建視圖和rownum偽列;
7.事務區別
MySQL對于事務默認是不支持的,只有某些存儲引擎中如:innodb可以支持。 而Oracle對于事務是完全支持,不管是OLTP還是OLAT都是支持的。
8.事務處理區別
MySQL默認是自動提交,而Oracle默認不自動提交,需要用戶CTL語言進行 事務提交;
9.字符連接區別
MySQL中不支持||作為連字符,需要使用concat()函數。在參數數量上與Oracle 的concat()函數有區別;(Oracle中的concat()中只能加兩個參數,而MySQL中 的concat 可以加很多,如果其中有空值結果將返回null);
10.搜索特定符號區別
在Oracle中想要搜索“%”和“”需要利用escape來指定換碼符;(搜索包 含‘SA’的字符串可以使用 ESCAPE 對\表示該符號為轉義符號。LIKE ‘%SA_%’ ESCAPE ‘’;)在MySQL中則不需要,可以直接搜索;
11.更新數據區別
在MySQL中更新數據時,被更新的表不能在set和where中用于子查詢;而 Oracle卻可以;
12.表名修改區別
Oracle在修改表名的時候直接rename 舊名 to 新名;
而MySQL中則需要alter table 舊名 rename 新名;
13.列名修改區別(永久修改)
Oracle在修改列名時用 alter table 表名 rename column 舊名 to 新名;
而mysql在修改列名時 alter table 表名 change column 舊名 新名 類型;
14.全外連接的區別
在Oracle中支持full outer join 全外連接
而MySQL卻不支持,但可以用union來實現全外連接效果;
15.刪除數據區別
刪除數據時Oracle 中可以不加from(delete [from] 表名 where 條件)
而MySQL中必須加from(delete from 表名 where 條件)
16.日期字段區別
MYSQL日期字段分DATE和TIME兩種,調用當前時間為sysdate()
ORACLE日期字段只有DATE,包含年月日時分秒信息,調用當前時間為SYSDATE, 精確到秒。
總結
以上是生活随笔為你收集整理的MySQL与Oracle的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL中的执行计划
- 下一篇: JDBC之应用程序分层