zoukankan      html  css  js  c++  java
  • sql server CLR

    1. 配置sql server 启用CLR

    在SQL Server2005/2008里面,CLR默认是关闭的。可以使用如下SQL语句开启CLR。 
    sp_configure 'show advanced options', 1; 
    GO 
    RECONFIGURE; 
    GO 
    sp_configure 'clr enabled', 1; 
    GO 
    RECONFIGURE; 
    GO

    2. 编写对应的.net 代码

     [Microsoft.SqlServer.Server.SqlProcedure()]
            public static void firstapp1()
            {
                SqlCommand cmd = new SqlCommand("select * from teptable1");
                SqlContext.Pipe.ExecuteAndSend(cmd);

           }

    3. 添加程序集

    如下图:

     

    4. 编写调用的sql


    CREATE PROCEDURE [dbo].firstapp1
    AS EXTERNAL NAME [MyCLR].[MyCLR.CLRDemo].firstapp

    注意调用的写法

    5. 客户端调用方法

    using (SqlConnection connection = new SqlConnection(@"Data Source=.sql2012;Initial Catalog=buckInsert;User ID=sa;ApplicationIntent=ReadOnly;password=1234"))
                {
                    DataSet ds = new DataSet();

                    SqlCommand command = new SqlCommand();
                    command.Connection = connection;
                    command.CommandType = CommandType.StoredProcedure;
                    command.CommandText = "firstapp1";
                    SqlDataAdapter dp = new SqlDataAdapter(command);
                    dp.Fill(ds);
                    DataTable dt = ds.Tables[0].Copy();

                    foreach (DataRow item in ds.Tables[0].Select("id<1000"))
                    {
                        dt.ImportRow(item);
                    }
                    dataGridView1.DataSource = dt;
                }

    6. ssis 调用sql

    exec firstapp1

    7.测试结果

    以上为测试的结果

  • 相关阅读:
    字符编码之间的转换 utf-8 , gbk等,(解决中文字符串乱码)
    信号分帧的三种实现方法及时间效率对比
    倒谱Cepstrum本质的理解
    Matlab 中 arburg 函数的理解与实际使用方法
    包络提取的两种方法-希尔伯特变换 和 局部峰值检测
    卡尔曼滤波的自我理解
    随机生成一个长度为n的数组
    JS 数字取整等操作
    vue 跳转路由新开页
    el-form 相关自定义校验
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/3765888.html
Copyright © 2011-2022 走看看