SQL裡中儲存過程和觸發器,如何建立

時間 2022-04-13 17:51:14

1樓:

觸發器是一種特殊的儲存過程,

2.觸發器是在對錶進行插入、更新或刪除操作時自動執行的儲存過程

3.觸發器通常用於強制業務規則

4.觸發器是一種高階約束,可以定義比用check 約束更為複雜的約束

5.可執行複雜的sql語句(if/while/case)

delete 觸發器

insert 觸發器

update 觸發器

/*----------insert 插入 觸發器------------*/

create trigger tri_insert

on students /*針對某個表,觸發器是建立在表關係上的*/

for insert /*採用的是哪種觸發器*/

asdeclare @stu_id int;

declare @stu_score varchar(200);

select @stu_id=s_id from inserted /*這裡的inserted 是在建立觸發器時候 系統自動建立的記憶體表*/

insert into student_score(s_id,ss_score)values(@stu_id,'100')

go--就是插一條資料進入students中,tri_insert觸發器就會自動在student_score插入相關的學生的一條分數的資料

insert into students(s_name,s_classid) values('黃馳',6)

select * from student_score

2樓:匿名使用者

mysql教程4 mysql8運算子、函式、儲存過程及新增資料型別 17.之建立帶有in和out引數的儲存過程 學習猿地

3樓:貳兩毛尖

如果是mssql server,在企業管理器裡,右鍵表名,然後自己看

4樓:匿名使用者

儲存過程可以直接用sql語句建立,觸發器可以在表修改中建立

create procedure nameas

5樓:薛實

(1).儲存過程:

create procedure for_select(你想用的觸發器名字)

delare @name char(8) output(用於輸出的),@age int output(用於輸出),@phone_num char(11) (輸入)

asselect @name=name(列名),@age=age(列名) from table_name(表名)

where phone_num(列名)=@phone_num

(2)觸發器

create tigger for_update

on table_name

after update

asif(update(phone_num))

update table_name2

set phone_num=i.phone_num

from deleted d,inserted i

where table_name.phone_num=d.phone_num

end其中:deleted與inserted是sql中預設的臨時表。用來儲存原來的值和插入的值。

本觸發器的作用是 當更新table_name 中的phone_num時table_name1中的phone_num也一起更新!注意觸發器只能用於update.insert.

delete.select中不能用於建立表............

用oracle裡的sql語言建立使用者

建立使用者名為tiger的使用者,密碼 tiger在命令視窗裡 create user tiger identified by tiger 此時的tiger沒有任何許可權,甚至不能 登入到oracle資料庫 要用dba許可權的使用者為 tiger 賦予許可權,賦予會話的許可權 就是能連線到oracl...

SQL裡報錯,不是單組分組函式,oracle寫sql時報錯不是單組分組函式

你是 想得到的是 平均工資最大的那個部門,還是各個部門的平均工資?oracle,sql語句中對錯誤提示 不是單組分組函式的乙個疑問 select deptno,max count from emp group by deptno 其中max count 相當於2次分組,那麼對應的select 中的其...

sql查詢裡怎麼拆分字串(按拆分)

1 首先點選新建查詢按鈕,新建乙個查詢。2 然後準備乙個要分割的字串,如下圖所示。3 接著用parsename進行分割,第二個引數是取分割後的第幾個,如下圖所示,第乙個是最後乙個位置。4 然後最後乙個才是第乙個的位置。5 接下來就可以通過位置把他們都取出來了。6 最後就得到了字串各個分割後的子字串了...

sql裡有沒有類似split的分割字串函式

create or replace type split type is table of varchar2 4000 2 定義split函式 create or replace function split p str in varchar2,p delimiter in varchar2 ret...

vs2019裡面的sql2019與真正的sql2019的關係是否獨立

你好,以我多年來使用微軟產品的經驗來看,你好像對微軟產品的特點還不太了解。微軟產品的乙個特點就是復用,當你安裝了sql2008,會附帶安裝許多外圍程式,而安裝vs2010時也會安裝許多外圍程式,當有些程式已經存在時,安裝程式就會檢測其版本,並用新的版本替換舊的版本。那這會不會出問題呢?微軟會告訴你,...