亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺析基于.NET的數(shù)據(jù)庫(kù)存儲(chǔ)過程應(yīng)用

        2017-05-30 12:10:18魏宏昌王英杰梁曉強(qiáng)王志娟張朝亮
        科技尚品 2017年1期
        關(guān)鍵詞:數(shù)據(jù)庫(kù)應(yīng)用

        魏宏昌 王英杰 梁曉強(qiáng) 王志娟 張朝亮

        摘 要:數(shù)據(jù)是軟件的重要組成部分,特別是在B/S系統(tǒng)中數(shù)據(jù)庫(kù)訪問是一個(gè)讀寫數(shù)據(jù)操作很重要的部分,而通過存儲(chǔ)過程實(shí)現(xiàn)數(shù)據(jù)庫(kù)訪問是很多軟件使用的方法。本文介紹ASP.NET 數(shù)據(jù)庫(kù)應(yīng)用程序調(diào)用SQL Server數(shù)據(jù)庫(kù)管理系統(tǒng)中的存儲(chǔ)過程的方法,以及使用存儲(chǔ)過程的優(yōu)勢(shì)和注意事項(xiàng)。

        關(guān)鍵詞:存儲(chǔ)過程;數(shù)據(jù)庫(kù);應(yīng)用

        1 前言

        SQL Server數(shù)據(jù)庫(kù)管理系統(tǒng)是目前最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一,主要包括數(shù)據(jù)庫(kù)、表、視圖,還有函數(shù)、存儲(chǔ)過程、觸發(fā)器等可編程性對(duì)象。那什么是存儲(chǔ)過程呢?存儲(chǔ)過程可以說是一個(gè)記錄集,它是由一些T-SQL語句組成的代碼塊,這些T-SQL語句代碼就像C#中的一個(gè)方法一樣,實(shí)現(xiàn)一些功能比如對(duì)單表或多表的增刪改查。

        在SQL Server數(shù)據(jù)庫(kù)管理系統(tǒng)中容易混淆的有函數(shù)和存儲(chǔ)過程兩個(gè)對(duì)象,它們兩個(gè)其實(shí)還是有很大區(qū)別的,主要體現(xiàn)在以下幾點(diǎn):

        (1)一般來說,存儲(chǔ)過程的功能要復(fù)雜一點(diǎn),而函數(shù)是簡(jiǎn)短而有針對(duì)性的。

        (2)存儲(chǔ)過程可借助output返回參數(shù),而函數(shù)只能返回值或者數(shù)據(jù)集。

        (3)存儲(chǔ)過程是作為一個(gè)獨(dú)立的部分來執(zhí)行,而函數(shù)可以作為Select語句的一部分,由于函數(shù)可以返回一個(gè)數(shù)據(jù)集,因此函數(shù)可以在查詢語句中位于FROM關(guān)鍵字的后面,存儲(chǔ)過程則不能。

        2 存儲(chǔ)過程的優(yōu)點(diǎn)

        存儲(chǔ)過程作為SQL Server數(shù)據(jù)庫(kù)管理系統(tǒng)的重要對(duì)象,提供了許多標(biāo)準(zhǔn)SQL語言中所沒有的高級(jí)特性,主要表現(xiàn)在以下幾個(gè)方面:

        (1)執(zhí)行速度更快。

        (2)允許模塊化程序設(shè)計(jì)。

        (3)提高系統(tǒng)安全性。

        (4)減少網(wǎng)絡(luò)流通量。

        3 存儲(chǔ)過程的分類

        存儲(chǔ)過程大致分為以下這些分類:沒有輸入輸出的存儲(chǔ)過程、有返回值的存儲(chǔ)過程、只返回單一記錄集的存儲(chǔ)過程、返回多個(gè)記錄集的存儲(chǔ)過程、有輸入?yún)?shù)和輸出參數(shù)的存儲(chǔ)過程、同時(shí)具有返回值和輸入與輸出參數(shù)的存儲(chǔ)過程、同時(shí)有返回值和記錄集的存儲(chǔ)過程。

        下面我們以SQL Server自帶的Northwind數(shù)據(jù)庫(kù)為例,定義一個(gè)添加區(qū)域名稱操作,并返回這個(gè)操作影響的行數(shù),同時(shí)還要獲取新添加的區(qū)域名的ID以及所有區(qū)域名的記錄集。定義存儲(chǔ)過程的SQL語句:

        CREATE PROCEDURE uspRegion @regionId int output,@regionDescription nchar(50)

        AS insert into Region(RegionDescription)values(@regionDescription)

        set @regionId = @@IDENTITY select * from Region return @@rowcount

        4 在ASP.NET程序里調(diào)用存儲(chǔ)過程

        要訪問數(shù)據(jù)庫(kù)就要用到ADO.NET去操作,使用其中的Connection對(duì)象連接數(shù)據(jù)庫(kù),再使用Command對(duì)象執(zhí)行SQL語句或存儲(chǔ)過程,返回值和輸出參數(shù)都要使用Command對(duì)象獲得,如果有返回的數(shù)據(jù)集,還要使用DataAdapter對(duì)象將數(shù)據(jù)集填充到DataSet對(duì)象里。

        我們使用上面定義的存儲(chǔ)過程,使用ASP.NET執(zhí)行添加區(qū)域名操作,我們先創(chuàng)建一個(gè)ASP.NET頁面,用一個(gè)名為txtDesc的文本框控件作為區(qū)域名的輸入,用名為gvRegion的數(shù)據(jù)表格控件顯示所有區(qū)域信息,用名為lblInfo的標(biāo)簽控件顯示添加操作的結(jié)果和新區(qū)域名的ID。提交按鈕的后臺(tái)代碼如下:

        SqlCommand cmd = new SqlCommand();cmd.Connection = conn;cmd.CommandText = “ uspRegion “;

        cmd.CommandType = CommandType.StoredProcedure;

        IDataParameter[] pa = {new SqlParameter(“@regionId”,SqlDbType.Int,4),

        new SqlParameter(“@regionDescription”,SqlDbType.NChar,50),new SqlParameter(“val”,SqlDbType.Int,4)};

        pa[0].Direction = ParameterDirection.Output;pa[1].Value = txtDesc.Text;

        ps[2].Direction = ParameterDirection.ReturnValue;

        cmd.Parameters.Add(pa[0]);cmd.Parameters.Add(pa[1]);cmd.Parameters.Add(pa[2]);

        SqlDataAdapter da = new SqlDataAdapter(cmd);DataSet ds = new DataSet();da.Fill(ds);

        gvRegion.DataSource = ds.Tables[0];gvRegion.DataBind();

        lblInfo.Text = “操作行:" +pa[2].Value.ToString()+ ",新ID為" + pa[0].Value.ToString();

        5 結(jié)語

        本文討論了SQL Server中的存儲(chǔ)過程的概念、分類和優(yōu)缺點(diǎn),并通過一個(gè)實(shí)例和代碼描述了在ASP.NET程序里調(diào)用帶輸入輸出參數(shù)已經(jīng)返回?cái)?shù)據(jù)集的存儲(chǔ)過程。從中我們發(fā)現(xiàn),通過使用存儲(chǔ)過程,可以提高數(shù)據(jù)的獨(dú)立性和邏輯性,還能提高程序的安全性與可擴(kuò)展性。

        參考文獻(xiàn)

        [1]周慧,施樂軍.數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用[M].人民郵電出版社,2015.

        [2]高宏.ASP.NET典型模塊與項(xiàng)目實(shí)戰(zhàn)大全[M].清華大學(xué)出版社,2014.

        (作者單位:石家莊信息工程職業(yè)學(xué)院)

        猜你喜歡
        數(shù)據(jù)庫(kù)應(yīng)用
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        多媒體技術(shù)在小學(xué)語文教學(xué)中的應(yīng)用研究
        考試周刊(2016年76期)2016-10-09 08:45:44
        分析膜技術(shù)及其在電廠水處理中的應(yīng)用
        科技視界(2016年20期)2016-09-29 14:22:00
        GM(1,1)白化微分優(yōu)化方程預(yù)測(cè)模型建模過程應(yīng)用分析
        科技視界(2016年20期)2016-09-29 12:03:12
        煤礦井下坑道鉆機(jī)人機(jī)工程學(xué)應(yīng)用分析
        科技視界(2016年20期)2016-09-29 11:47:01
        氣體分離提純應(yīng)用變壓吸附技術(shù)的分析
        科技視界(2016年20期)2016-09-29 11:02:20
        會(huì)計(jì)與統(tǒng)計(jì)的比較研究
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        精品无码人妻夜人多侵犯18| 久久精品有码中文字幕1| 亚洲大胆视频在线观看| 中文字幕一区二区人妻秘书| 最新系列国产专区|亚洲国产| 人与嘼av免费| 国产又粗又猛又黄色呦呦| 亚洲成人精品在线一区二区| 永久亚洲成a人片777777| 亚洲av无码久久寂寞少妇| 免费 无码 国产精品| 精品国产色哟av一区二区三区| 国产精品久久久久久av| 天躁夜夜躁狼狠躁| 久久久午夜毛片免费| 精品不卡视频在线网址| 中国女人内谢69xxxxxa片| 欧美人与动牲交a欧美精品| 国产午夜激情视频自拍| 黄片免费观看视频播放| 欧美老肥妇做爰bbww| 久久国产精久久精产国| 亚洲AV无码一区二区三区少妇av| 国产亚洲综合另类色专区| 中文字幕色av一区二区三区| 精品国产黑色丝袜高跟鞋| 日韩精品首页在线观看| 日韩精品在线一二三四区| 黑色丝袜秘书夹住巨龙摩擦| 一本大道香蕉视频在线观看| 熟女人妻一区二区在线观看| 亚洲女优中文字幕在线观看| 亚洲伊人色欲综合网| 精品亚洲午夜久久久久| 性色国产成人久久久精品二区三区 | 日本女优免费一区二区三区| 亚洲一区二区三区四区五区黄| 免费夜色污私人影院在线观看| 精品国产亚洲av麻豆尤物| 一区二区三区四区在线观看日本 | 中文人妻AV高清一区二区|