SQL Server 2005中網(wǎng)頁(yè)傳遞變量的實(shí)現(xiàn)過(guò)程
此文主要向大家講述的是SQL Server 2005中網(wǎng)頁(yè)傳遞變量的實(shí)現(xiàn),此例子十分簡(jiǎn)單,其主要的主要目的是想讓大家對(duì)SQL 2005 CRL 函數(shù)創(chuàng)建過(guò)程有更好的理解,在網(wǎng)頁(yè)傳遞變量,一般先編碼,然后解碼即可。
在.net 實(shí)現(xiàn)這個(gè)功能,非常簡(jiǎn)單直接調(diào)用(微軟已經(jīng)處理完成了),這個(gè)例子非常的簡(jiǎn)單,寫這個(gè)例子的目的主要還是想讓大家熟悉SQL 2005 CRL 函數(shù)的一個(gè)創(chuàng)建過(guò)程。
在網(wǎng)頁(yè)傳遞變量,一般先編碼,然后解碼即可。在.net 實(shí)現(xiàn)這個(gè)功能,非常簡(jiǎn)單直接調(diào)用(微軟已經(jīng)處理完成了),
它的編碼:
- String Message = Server.UrlEncode("歡迎學(xué)習(xí)ASP.NET!");
- Response.Redirect("WebForm2.aspx?Msg=" + Message);
它的解碼:
- Label1.Text = Server.UrlDecode(Request.QueryString["Msg"]);
如果在SQL 2000中實(shí)現(xiàn)這個(gè)方法,并不是件容易的事情,需要找到UrlEncode和UrlDecode原理,然后分析編碼和解碼字符串。(如果有興趣,大家可以試試寫下,網(wǎng)上看到SQL 2000實(shí)現(xiàn)的,都有問(wèn)題。)
SQL 2005 實(shí)現(xiàn)過(guò)程:
如果我們用SQL 2005 實(shí)現(xiàn)這樣的功能,那是非常的方便。下面介紹步驟。(由于截圖比較直觀,我以截圖為主)
一:創(chuàng)建一個(gè)SQL Server 2005 數(shù)據(jù)庫(kù)工程,
二:配置你需要把該CLR函數(shù)添加的數(shù)據(jù)庫(kù)。
三:在SQL Project工程中添加函數(shù),
四、由于我們?cè)诖a中要用到 System.Web.HttpUtility.UrlDecode 方法,而默認(rèn)SQL Project工程下是找不到它的System.Web引用的,所以需要把System.Web引用添加在SQL 2005 中,它告訴我們?nèi)绻覀冊(cè)赟QL 2005中找不到相關(guān)類庫(kù)的引用,必須在SQL 2005 中先引用它的父程序集。此例
五、此時(shí)我們?cè)赟QL Project 添加引用就可以找到System.Web了,
六、直接調(diào)用簡(jiǎn)單代碼即可,
七、編譯,生成后,在數(shù)據(jù)庫(kù)添加創(chuàng)建的CLR程序集。
八、我們測(cè)試下創(chuàng)建的確CLR函數(shù),
注意事項(xiàng):
1、創(chuàng)建CLR程序集如果失敗,需要開(kāi)啟CLR功能,默認(rèn)數(shù)據(jù)庫(kù)是不允許創(chuàng)建CLR的,還有就是更改數(shù)據(jù)庫(kù)的信任模式,代碼如下:
啟用數(shù)據(jù)庫(kù)CLR支持
- EXEC sp_configure 'show advanced options','1';
- go
- reconfigure;
- go
- EXEC sp_configure 'clr enabled','1'
- go
更改數(shù)據(jù)庫(kù)信任模式(為正確添加到程序集)
- Alter Database CSDN SET TRUSTWORTHY ON
- GO
總結(jié):
該功能雖然只在數(shù)據(jù)庫(kù)實(shí)現(xiàn)了Server.UrlEncode、Server.UrlDecode,但它告訴我們?nèi)绾卧赟QL 2005調(diào)用.Net Framwork中的方法,來(lái)實(shí)現(xiàn)強(qiáng)大的數(shù)據(jù)庫(kù)CLR功能。類似在SQL 2005 中很難實(shí)現(xiàn)的功能,參考上述辦法,調(diào)用.Net Framwork提供的強(qiáng)大類庫(kù),就可以實(shí)現(xiàn)復(fù)雜的數(shù)據(jù)庫(kù)功能。
以上的相關(guān)內(nèi)容就是對(duì)SQL Server 2005中實(shí)現(xiàn)網(wǎng)頁(yè)傳遞變量的介紹,望你能有所收獲。
【編輯推薦】