国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

實(shí)踐sql server存儲(chǔ)過程及觸發(fā)器

瀏覽:2日期:2023-11-02 14:32:12

本文作者和您一起實(shí)踐sql server存儲(chǔ)過程及觸發(fā)器,這可能也是整修數(shù)據(jù)庫(kù)的精華所在吧!

1.創(chuàng)建SQL存儲(chǔ)過程:CREATE PROCEDURE stu_proc1//指定過程名;@Sno varchar(50); ='7000803068',//定義參數(shù)以及默認(rèn)值; AS//執(zhí)行SQL語(yǔ)句;select * from Student ;where Sno=@Sno;GO

Declare @XXX聲明變量set @XXX=XXX設(shè)定變量值同時(shí)里面也有if else while等語(yǔ)句不過得加上begin end

2.執(zhí)行存儲(chǔ)過程; Execute stu_proc1 @Sno='XXX' @Sname='XXXX'

其實(shí)可以把存儲(chǔ)過程看成一個(gè)C語(yǔ)言的函數(shù)。函數(shù)名是存儲(chǔ)過程名,形參是也是里面的參數(shù),里面還有局部變量,同時(shí)也可設(shè)定值。也可以返回值,用return語(yǔ)句。里面可以用到if else,while語(yǔ)句。但是C里面的函數(shù)功能會(huì)更大,不能等同,只能做比較。寫存儲(chǔ)過程也有點(diǎn)像寫個(gè)函數(shù)一樣。

同時(shí)在JAVA語(yǔ)言中也可以調(diào)用存儲(chǔ)過程,類似C里調(diào)用函數(shù)。設(shè)定形參值。

3.JDBC中調(diào)用存儲(chǔ)過程;CallableStatement對(duì)象;String sql="{call stu_proc1(?,?)}";;String firstVal="";;String secondVal="";;Class.forName();;Connection conn=DriverManager.getConnection("","","");;CallableStatement stmt=conn.prepareCall(sql);;stmt.setString(1,firstVal);;stmt.setString(2,secondVal);;ResultSet rs=stmt.executeQuery();

存儲(chǔ)過程可以提高訪問數(shù)據(jù)庫(kù)的性能和速度。觸發(fā)器是一種特殊的存儲(chǔ)過程,主要用于update,insert,delete這三種語(yǔ)句,主要是處理表與表之間的關(guān)聯(lián),也就是約束性吧。同時(shí)有二個(gè)表inserted(插入表),deleted(刪除表)而update可以看成先刪除,然后插入.比如,當(dāng)要?jiǎng)h除一個(gè)學(xué)生時(shí),同時(shí)該學(xué)生的選課記錄也是要?jiǎng)h除的,這時(shí)可以在學(xué)生表進(jìn)建個(gè)觸發(fā)器就可以實(shí)現(xiàn)這種功能。

觸發(fā)器就是可以進(jìn)行關(guān)聯(lián)操作,而單單SQL語(yǔ)句不能做到這一點(diǎn)。

CREATE TRIGGER StudentDelete ON [dbo].[Student] FOR; DELETE ASdelete from SC where SC.Sno=(select Sno from deleted)

語(yǔ)句形式跟存儲(chǔ)過程是一致的,因?yàn)橛|發(fā)器本身就是一種存儲(chǔ)過程.

相關(guān)文章:
主站蜘蛛池模板: 汝阳县| 甘德县| 治多县| 定兴县| 兰溪市| 宾阳县| 卢湾区| 娄烦县| 汉中市| 新竹市| 大同县| 满城县| 腾冲县| 岫岩| 津南区| 河北省| 湖南省| 中宁县| 澄江县| 论坛| 大埔区| 邹平县| 彩票| 多伦县| 天水市| 南投市| 裕民县| 辉南县| 西藏| 屏东县| 阜阳市| 自贡市| 武宣县| 上栗县| 岱山县| 谷城县| 特克斯县| 宁蒗| 民勤县| 三门峡市| 大新县|