成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

深入.NET核心 CLR函數(shù)使用舉例

開發(fā) 后端 SQL Server
可以在 SQL Server 實(shí)例中創(chuàng)建可在 Microsoft .NET Framework 公共語言運(yùn)行時 (CLR) 中創(chuàng)建的程序集中進(jìn)行編程的數(shù)據(jù)庫對象。可以充分利用公共語言運(yùn)行時所提供的豐富的編程模式的數(shù)據(jù)庫對象包括聚合函數(shù)、函數(shù)、存儲過程、觸發(fā)器以及類型。

可以在 SQL Server 實(shí)例中創(chuàng)建可在 Microsoft .NET Framework 公共語言運(yùn)行時 (CLR) 中創(chuàng)建的程序集中進(jìn)行編程的數(shù)據(jù)庫對象。可以充分利用公共語言運(yùn)行時所提供的豐富的編程模式的數(shù)據(jù)庫對象包括聚合函數(shù)、函數(shù)、存儲過程、觸發(fā)器以及類型。

在 SQL Server 中創(chuàng)建 CLR 函數(shù)分為下列幾個步驟:

使用 .NET Framework 支持的語言將函數(shù)定義為類的靜態(tài)方法。然后,使用適當(dāng)?shù)恼Z言編譯器編譯該類,在 .NET Framework 中生成程序集。使用 CREATE ASSEMBLY 語句在 SQL Server 中注冊程序集。通過使用 CREATE FUNCTION 語句創(chuàng)建引用注冊程序集的函數(shù)。

注意:

在 Microsoft Visual Studio 中部署 SQL Server 項(xiàng)目將在為該項(xiàng)目指定的數(shù)據(jù)庫中注冊程序集。部署項(xiàng)目時,還會在數(shù)據(jù)庫中為使用 SqlFunction 屬性注釋的所有方法創(chuàng)建 CLR 函數(shù)。

注意:

默認(rèn)情況下,關(guān)閉 SQL Server 執(zhí)行 CLR 代碼的功能。您可以創(chuàng)建、更改和刪除引用托管代碼模塊的數(shù)據(jù)庫對象,但是除非通過使用 sp_configure (Transact-SQL) 啟用了 clr enabled 選項(xiàng),否則這些引用將不會在 SQL Server 中執(zhí)行。

訪問外部資源

可以使用 CLR 函數(shù)訪問外部資源,例如文件、網(wǎng)絡(luò)資源、Web 服務(wù)及其他數(shù)據(jù)庫(包括 SQL Server 遠(yuǎn)程實(shí)例)。這可以通過使用 .NET Framework 中的各種類(例如 System.IO、System.WebServices 及 System.Sql 等)來實(shí)現(xiàn)。至少應(yīng)將包含此類函數(shù)的程序集配置為設(shè)置了 EXTERNAL_ACCESS 權(quán)限,才能實(shí)現(xiàn)此目的。可以使用 SQL 客戶端托管訪問接口訪問 SQL Server 遠(yuǎn)程實(shí)例。但在 CLR 函數(shù)中不支持與發(fā)起服務(wù)器的環(huán)回連接。

示例如下:

***步:

 

第二步:

public class Class1
{
    public static string MySplit(int filedIndex, string filedName)
    {
        //filedIndex從1開始
        try
        {
            if (filedIndex == null || filedIndex <= 0 || filedName == null || filedName == "")
            {
                return "";
            }
            else
            {
                return filedName.Split('|')[filedIndex - 1].Trim();
            }

        }
        catch
        {
            return "";
        }
    }
}

//得到程序集 ClassLibrary1.dll

第三步:

CREATE ASSEMBLY Class1
AUTHORIZATION [dbo]
FROM 'C:\ClassLibrary1.dll'
WITH PERMISSION_SET = SAFE

第四步:

CREATE FUNCTION dbo.MySplit
(
 @filedIndex AS INT,
 @filedName AS NVARCHAR(255)
)
RETURNS NVARCHAR(255)
AS
EXTERNAL NAME Class1.Class1.MySplit

第五步(測試):

select dbo.MySplit(2,name) from mytesttable

以上測試通過!

【編輯推薦】

  1. 探秘CLR 4.0中的代碼契約
  2. Visual Studio中的SQL Server CLR代碼調(diào)試
  3. SQL Server 2005中的CLR集成
責(zé)任編輯:book05 來源: Sina博客
相關(guān)推薦

2009-09-18 11:13:09

.Net CLR

2009-09-18 13:05:59

.NET CLR

2009-08-24 11:36:27

CLR加載過程

2009-07-24 09:24:31

Java終止函數(shù)

2009-10-22 16:08:52

.NET CLR是什么

2009-10-13 17:08:10

CLR VB.NET

2009-09-18 11:29:23

.NET CLR

2009-10-22 17:39:34

CLR內(nèi)存管理

2009-10-20 09:28:18

VB.NET Prin

2014-11-17 09:40:28

.NET

2009-10-12 16:51:28

VB.NET使用Ora

2009-10-19 14:25:16

靜態(tài)構(gòu)造函數(shù)

2009-09-18 09:02:45

CLR Via C#

2009-04-14 09:35:33

.NETCLR術(shù)語

2010-07-13 10:13:35

Perl內(nèi)部函數(shù)

2009-09-25 09:36:55

Hibernate核心

2009-10-22 11:25:08

CLR函數(shù)壓縮

2023-10-31 11:46:32

編譯器托管CLR

2010-07-06 15:54:30

VB.NET UDP

2021-04-28 10:13:58

zookeeperZNode核心原理
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 日韩免费福利视频 | 亚洲成人精品久久 | 亚洲美女视频 | 精品粉嫩超白一线天av | 亚洲国产一 | 成人亚洲网站 | 自拍第一页 | 一区二区三区四区免费在线观看 | 欧美一区二区在线 | 亚洲乱码国产乱码精品精的特点 | 欧美久久一区 | 国产日韩欧美一区二区 | 久久99精品久久久久久国产越南 | 亚洲成人黄色 | 亚洲成人av | 男女羞羞视频在线观看 | www.中文字幕 | 四虎影院在线观看免费视频 | 成人精品国产 | 亚洲综合五月天婷婷 | 天天干视频 | 欧美一区二区在线观看视频 | 99亚洲精品| 久久精品亚洲精品 | 亚洲一区二区网站 | 精品二三区 | 婷婷二区 | 成人欧美一区二区三区黑人孕妇 | 九九免费在线视频 | 视频一区欧美 | 午夜视频在线免费观看 | 盗摄精品av一区二区三区 | 久久免费视频2 | 亚洲精品日日夜夜 | 国产精品日韩欧美一区二区三区 | 一级黄色片在线看 | 亚洲成av | 午夜视频免费网站 | 91黄在线观看 | 亚洲欧美一区在线 | 成年人网站免费视频 |