MySQL與Oracle的大小寫問題

2021-08-26 14:11:18 字數 1011 閱讀 8181

文章宣告

傲風([email protected])

**:前段時間,維護的乙個應用在oracle測試時出錯,該應用原來已經在mysql上完成測試。通過查詢定位,原因是欄位名大小寫問題。下面與大家分離一下mysql與oracle在大小寫處理上的區別:

0:區分大小寫;

1:不區分大小寫。

1、在oracle中,如果欄位名稱被雙引號("")包裹,oracle會區分大小寫;

2、如果欄位名稱沒有被雙引號("")包裹,則全部轉換成大寫來執行。

3、如果表結構設計時,欄位名稱使用了資料庫的保留字,sql中的欄位名稱必須用雙引號("")包裹,以避免sql語句執行出錯。不建議用資料庫的保留字來做表名和欄位名 。

以下sql語句在oracle中執行時,字段 stat_time, interval 沒有被雙引號("")包裹,不區分大小寫:

insert into smsc_flow(stat_time ,interval ,"moduleid","smscno","icpno","mt_ok","mt_fail","mt_delay","mo_ok","mo_fail","status_ok","status_fail","success_status","count") values('20101010112',1,'mt001',1,1,1,1,1,1,1,1,1,1,1)

以下sql語句在oracle中執行時,字段 stat_time, interval 被雙引號("")包裹,全部轉換成大寫執行:

insert into smsc_flow("stat_time ","interval ","moduleid","smscno","icpno","mt_ok","mt_fail","mt_delay","mo_ok","mo_fail","status_ok","status_fail","success_status","count") values('20101010111','20101010111',1,'mt001',1,1,1,1,1,1,1,1,1,1,1)

MySQL與Oracle的大小寫問題

前段時間,維護的乙個應用在oracle測試時出錯,該應用原來已經在mysql上完成測試。通過查詢定位,原因是欄位名大小寫問題。下面與大家分離一下mysql與oracle在大小寫處理上的區別 1 在windows下,資料庫名 表名 欄位名不區分大小寫。2 大linux unix下,資料庫名 表名區分大...

Oracle與MySQL的區別

一 併發性 oracle的併發性優於mysql的併發性,oracle使用行級鎖,資源鎖定的粒度較小 mysql使用的是表級鎖 二 一致性 oracle構造資料塊來實現讀一致性,mysql只支援read commited隔離級別,乙個session讀取資料時,其他session不能更改資料,只可以在表...

Oracle與MySql的區別

mysql查詢預設是不區分大小寫的 如 select from table name where a like a select from table name where a like a 效果是一樣的。要讓mysql查詢區分大小寫,可以 select from table name where ...