更新時間:2021-06-21 16:41:45作者:admin2
存儲過程 一組為了完成特定功能的SQL 語句集,經(jīng)編譯后存儲在數(shù)據(jù)庫中,用戶通過指定存儲過程的名字并給出參數(shù)(如果該存儲過程帶有參數(shù))來執(zhí)行它。觸發(fā)器 是個特殊的存儲過程,它的執(zhí)行不是由程序調(diào)用,也不是手工啟動,而是由事件來觸發(fā),比如當(dāng)對一個表進(jìn)行操作( insert,delete, update)時就會激活它執(zhí)行。
你不是吧,問這個問題,你先找本ORACLE的書看完了再說吧。。這個東西用文字很難講清楚的
我的理解:主要是使用場合不同,還有就是觸發(fā)器中不能使用commit(這個應(yīng)該是約定而不是規(guī)定)存儲過程相當(dāng)于打包好的sql語法,可以包含復(fù)雜的sql操作,在程序調(diào)用時只要執(zhí)行該存儲過程,一句話就可以完成復(fù)雜的數(shù)據(jù)庫操作.
我的理解:主要是使用場合不同,還有就是觸發(fā)器中不能使用commit(這個應(yīng)該是約定而不是規(guī)定)存儲過程相當(dāng)于打包好的sql語法,可以包含復(fù)雜的sql操作,在程序調(diào)用時只要執(zhí)行該存儲過程,一句話就可以完成復(fù)雜的數(shù)據(jù)庫操作.觸發(fā)器是也是打包好的sql語法,是一種特殊類型的存儲過程,不由用戶直接調(diào)用。創(chuàng)建觸發(fā)器時會對其進(jìn)行定義,以便在對特定表或列作特定類型的數(shù)據(jù)修改時執(zhí)行 另外:觸發(fā)器相對一般的存儲過程也多了一些在代碼編寫方面的不同,比如說CREATE TRIGGER 必須是批處理中的第一條語句,并且只能應(yīng)用到一個表中等等.具體的可以看一下觸發(fā)器的說明;http://baike.baidu.com/view/1189954.htm