国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

濫用觸發(fā)器會(huì)造成數(shù)據(jù)庫及應(yīng)用程序維護(hù)困難

2024-07-21 02:44:03
字體:
供稿:網(wǎng)友

觸發(fā)器功能強(qiáng)大,輕松可靠地實(shí)現(xiàn)許多復(fù)雜的功能,為什么又要慎用呢。 觸發(fā)器本身沒有過錯(cuò),但由于我們的濫用會(huì)造成數(shù)據(jù)庫及應(yīng)用程序的維護(hù)困難。


在數(shù)據(jù)庫操作中,我們可以通過關(guān)系、觸發(fā)器、存儲(chǔ)過程、應(yīng)用程序等來實(shí)現(xiàn)數(shù)據(jù)操作,比如刪除 T1 表記錄時(shí)期望刪除 T2 表相關(guān)的記錄,此時(shí)可以建立級(jí)聯(lián)刪除的關(guān)系,也可以為 T1 表建立觸發(fā)器使同時(shí)刪除 T2 表相關(guān)記錄,也可以自定義存儲(chǔ)過程刪除 T1 和 T2 表的記錄,也可以在應(yīng)用程序中使用兩個(gè) SQL 語句來刪除……到底用哪一種好呢,應(yīng)該說我們建立通過建立關(guān)系來實(shí)現(xiàn)級(jí)聯(lián)刪除是最好的,除非更有高的需求。


觸發(fā)器還有一個(gè)用途可以用來保障數(shù)據(jù)的完整性,但同時(shí)規(guī)則、約束、默認(rèn)值也可以保障數(shù)據(jù)完整性,到底哪一個(gè)好呢,一般說來,較為簡單的完整性要求我們不應(yīng)該使用觸發(fā)器。兩者在運(yùn)行機(jī)制上也是有區(qū)別的,像規(guī)則、約束、默認(rèn)值這些是在數(shù)據(jù)更改之前進(jìn)行數(shù)據(jù)驗(yàn)證,而觸發(fā)器是在數(shù)據(jù)更改之后進(jìn)行驗(yàn)證(如果事務(wù)回滾,該表將不會(huì)產(chǎn)生變化)。


總之,如果我們對觸發(fā)器過分的依賴,就會(huì)造成遍地是程序的情況,因?yàn)橛|發(fā)器本身就需要?jiǎng)e的程序給它一個(gè)觸發(fā)條件,也就是說至少在兩個(gè)地方存在著程序,同時(shí)我們拋棄了約束、默認(rèn)值等而選用觸發(fā)器,勢必影響數(shù)據(jù)庫的結(jié)構(gòu)。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 翁源县| 宁强县| 张家港市| 通许县| 青川县| 灵山县| 三河市| 临湘市| 花莲市| 彭水| 镇赉县| 秭归县| 白水县| 新蔡县| 太原市| 确山县| 岚皋县| 大洼县| 陵水| 南宁市| 黎城县| 康保县| 和顺县| 高碑店市| 武夷山市| 福州市| 临汾市| 万山特区| 邢台县| 汝南县| 包头市| 岑巩县| 侯马市| 惠东县| 阿合奇县| 和林格尔县| 德令哈市| 隆林| 沂源县| 平陆县| 三穗县|