掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
Oracle數(shù)據(jù)庫觸發(fā)器更新數(shù)據(jù)?

mysql查詢語句和oracle查詢語句的差別大嗎?l?
首先是大體一致的,只是分頁查詢時oracle用的偽列(rownum),mysql用的是limit,具體的可以百度一下分頁;
另外oracle對sql語句要求更為嚴格,而且oracle里變量較mysql更多點,oracle中有number型,有大數(shù)據(jù)類型,mysql沒得;
另外舉個例子,oracle不能插入為空列,而mysql是可以的(個人覺得,不知道正確與否)。還有他們兩者函數(shù)有不同之處,如轉(zhuǎn)日期函數(shù)oracle是to_date('要轉(zhuǎn)的字符串','格式') -- select to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss') from dual,而mysql是str_to_date('08/09/2008', '%m/%d/%Y'); -- 2008-08-09//都是針對字符串轉(zhuǎn)日期來的。
還有一點,我們常常希望主鍵可以自動增長,避免我們插入數(shù)據(jù)時的重復問題,但是oracle不能設置列自動增長,而mysql是可以的,oracle可以用序列加觸發(fā)器來解決自動增長問題達到與mysql一樣的效果。
總體來說百分之九十的sql語句是沒區(qū)別的??傮w來說oracle的格式嚴格點,對有些字符型的還必須加單引號才能插入,mysql要求就沒這么多了。還有當向數(shù)據(jù)庫插入一個日期時,mysql可以直接插入成功,但是oracle需要先轉(zhuǎn)化為sql里面的日期類型才行;oracle較mysql而言更安全,但是收費的,一般大公司用的多。oracle還有存儲過程和函數(shù),觸發(fā)器這些這是mysql沒有的。大體就是這樣吧。oracle刪除表為什么觸發(fā)器,也被刪除了?
刪除觸發(fā)器,DROP TRIGGER trigger_name;當然你要有相關權限。裝個pl/sql,更簡單。刪除表的時候“應該”不會刪除響應的觸發(fā)器的。為驗證,你可以驗證下,記得驗證了告訴我哈。驗證方法:刪除表后查詢相關觸發(fā)器:語句SELECT TRIGGER_NAME, TRIGGER_TYPE, TRIGGERING_EVENT, TABLE_OWNER, BASE_OBJECT_TYPE, REFERENCING_NAMES, STATUS, ACTION_TYPE FROM all_triggerswhereTRIGGER_NAME=your_trigger_name;

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流