国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

簡單的web三層架構系統【第四版】

2019-11-17 01:56:51
字體:
來源:轉載
供稿:網友

簡單的web三層架構系統【第四版】

上一次寫了第三版,

因為之前無意之間看到一段視頻,說是把系統中所有的SQL語句都做成存儲過程。可以在很大程度上優化系統的SQL執行速度。所以百度了一下細節問題,之后我把所有的SQL語句,都做成了存儲過程。

其實寫存儲過程也很簡單(可能是簡單的系統,不需要太復雜的SQL語句),只需要在數據庫里建立存儲過程,然后在程序之中調用就行。

1.首先先建立存儲過程:

 展開使用的數據庫→可編程性→存儲過程。然后右擊,新建存儲過程。

 1 set ANSI_NULLS ON 2 set QUOTED_IDENTIFIER ON 3 GO 4 -- ============================================= 5 -- Author:        H_F_us 6 -- Create date:  2014年12月29日09:18:01 7 -- Description:   刪除一條員工信息 8 -- ============================================= 9 ALTER PROCEDURE [dbo].[deleteperson]10 11     @id int    12 13 AS14 BEGIN15 16     delete from person where id = @id17 18 END

上面是建立好的存儲過程:

1.其中ALTER PROCEDURE 后面跟的是存儲過程的名稱,只要符合SQL命名規范,可任意選取。

2.AS上面,是SQL語句中要使用到的參數。

3.BEGIN 和 END之間是要執行的SQL語句。

這時候就可以在系統代碼中調用了。

personDAO類中:

 1         /// <summary> 2         /// 刪除員工信息 3         /// </summary> 4         /// <param name="id">要刪除員工的id</param> 5         /// <returns>返回真假值:如果是真顯示刪除成功,如果是假顯示刪除失敗</returns> 6         public bool delete(person p) 7         { 8             bool flag = false; 9 10             SqlParameter[] paras = new SqlParameter[]11             {12                 new SqlParameter("@id", p.id)13             };14 15             string prd = "deleteperson";16 17             int res = sq.ExecuteNonQuery(prd, paras, CommandType.StoredProcedure);18 19             if (res > 0)20             {21                 flag = true;22             }23 24             return flag;25         }

SQLHelper類中:

 1         /// <summary> 2         /// 執行帶參數的增刪改SQL語句 3         /// </summary> 4         /// <param name="sql">要執行的SQL語句</param> 5         /// <param name="paras">傳入的參數</param> 6         /// <returns>返回受影響的行數</returns> 7         public int ExecuteNonQuery(string sql, SqlParameter[] paras, CommandType cmt) 8         { 9             cmd = new SqlCommand(sql, getcon());10 11             cmd.CommandType = cmt;12 13             cmd.Parameters.AddRange(paras);15 16             return cmd.ExecuteNonQuery();17         }

注解:*在SQLHelper類中的ExecuteNonQuery方法中添加,CommandType cmt,也就是要指明要執行的是什么類型,之后就可以把原本的SQL語句換成存儲過程,然后在SQLHelper類中,添加cmd.CommandType = cmt; 指定要執行的的類型。

上面就是使用存儲過程執行SQL語句。寫的不是太詳細,但是核心代碼寫了出來,方便以后查看。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宜春市| 宜兰市| 永寿县| 兰溪市| 浮梁县| 云龙县| 巴彦淖尔市| 安达市| 曲水县| 商洛市| 元氏县| 板桥市| 清丰县| 青阳县| 湾仔区| 肥乡县| 昭觉县| 思南县| 商洛市| 宁晋县| 金溪县| 衡山县| 华坪县| 沿河| 长汀县| 大渡口区| 霍城县| 凉山| 洪江市| 中江县| 张家港市| 姜堰市| 南宁市| 郓城县| 承德县| 桐柏县| 桂东县| 湖南省| 五指山市| 合作市| 西乌珠穆沁旗|