SQL 觸發器 外來鍵約束

2021-08-21 22:13:07 字數 1110 閱讀 5527

1、構造乙個觸發器audit_log,在向employees_test表中插入一條資料的時候,觸發插入相關的資料到audit中。

create table employees_test(

id int primary key not null,

name text not null,

age int not null,

address char(50),

salary real

); create table audit(

emp_no int not null,

name text not null

);答案:

create

trigger audit_log after

insert

on employees_test

begin

insert

into audit values(new.id, new.name);

end

2、在audit表上建立外來鍵約束,其emp_no對應employees_test表的主鍵id。

create table employees_test(

id int primary key not null,

name text not null,

age int not null,

address char(50),

salary real

);create table audit(

emp_no int not null,

create_date datetime not null

);答案:

drop

table audit;

create

table audit(

emp_no int

notnull,

create_date datetime not

null,

foreign

key(emp_no) references employees_test(id))

SqlServer禁用啟用觸發器 外來鍵約束

啟用or禁用指定表所有外來鍵約束 alter table tbname nocheck constraint allalter table tbname check constraint all 檢視約束 select name is disabled from sys.foreign keys o...

用觸發器實現SQLite的外來鍵約束

用sqlite的觸發器實現刪除時,要關閉外來鍵,要不然會有出現刪不了外來鍵對應鍵的情況。最近在做數碼相框上的嵌入式開發,開發過程中使用的sqlite資料庫,但是編碼的過程中,遇到個問題,sqlite不支援外來鍵約束,外來鍵約束會被解析但不會被執行。參考了網上的做法,自己做了個實驗,用觸發器來實現了s...

用觸發器實現SQLite的外來鍵約束

最近在做數碼相框上的嵌入式開發,開發過程中使用的sqlite資料庫,但是編碼的過程中,遇到個問題,sqlite不支援外來鍵約束,外來鍵約束會被解析但不會被執行。參考了網上的做法,自己做了個實驗,用觸發器來實現了sqlite的外來鍵約束。建表語句 create table jokeitem id in...