SQLite觸發器

Table of Contents

1.前提

2.  artist表

3. track表

4. 觸發器創建


1.前提

         筆者要建立兩張數據表artist、track,通過觸發器TRIGGER實現artist中插入記錄時能同步到track數據庫表。

2.  artist表

CREATE TABLE artist(
artistid INTEGER PRIMARY KEY,
artistname TEXT
)

3. track表

CREATE TABLE track(
trackid     INTEGER,
trackname   TEXT,
trackartist INTEGER,
FOREIGN KEY(trackartist) REFERENCES artist(artistid)
)

4. 觸發器創建

CREATE TRIGGER artist_trigger_insert AFTER INSERT 
ON artist 
BEGIN 
INSERT INTO track VALUES((SELECT artistid FROM artist order by artistid desc limit 0, 1 ), "trigger", (SELECT artistid FROM artist order by artistid desc limit 0, 1 ));
END

創建artist_trigger_insert觸發器,當表artist執行INSERT命令後,觸發器執行BEGIN....END之間的語句,即將artist表中的最後一條記錄插入到track中,接下來看下筆者的測試結果:

分別在trist表插入兩組數據,觀察到track也被觸發器同步寫了

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章