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.测试结果

    以上为测试的结果

  • 相关阅读:
    抽象类和接口
    truncate,delete和drop的区别
    PLSQL乱码问题
    Linux
    myEclipse闪退
    Java 中 Synchronized 的使用
    工厂模式
    Java中的File,IO流
    jQuery的学习
    C++中的标准模板库STL
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/3765888.html
Copyright © 2011-2022 走看看