zoukankan      html  css  js  c++  java
  • sqlserv 配置 CLR

    转载地址:http://www.cnblogs.com/Brambling/p/8000911.html   //clr 配置

                     https://docs.microsoft.com/zh-cn/sql/relational-databases/clr-integration/assemblies-getting-information?view=sql-server-2017 //获取程序集信息

    --开启 CLR
    sp_configure 'clr enabled', 1;
    RECONFIGURE WITH override
    GO


    --权限不够时,设置目标数据库为可信赖的,例如:Test
    ALTER DATABASE ceshi SET TRUSTWORTHY ON

    --修改数据库所有者为当前登录的用户,也可以为其他用户,例如:sa
    EXEC sp_changedbowner 'sa'


    USE ceshi
    GO
    CREATE ASSEMBLY SqlCLRHelper
    --AUTHORIZATION sa --指定数据库所有者,默认为当前用户
    FROM 'C:myProjectsqlCLRsqlCLRinReleasesqlCLR.dll' --指定文件路径
    WITH PERMISSION_SET = UNSAFE; --指定程序集的权限
    --SAFE:无法访问外部系统资源;
    --EXTERNAL_ACCESS:可以访问某些外部系统资源;
    --UNSAFE:可以不受限制的访问外部系统资源
    GO

    --删除函数
    DROP FUNCTION dbo.F_Replace
    --删除程序集
    DROP ASSEMBLY SqlCLRHelper
    --查看程序集
    SELECT * FROM sys.assemblies

    SELECT * FROM sys.assembly_modules 

    --注册函数

    CREATE FUNCTION dbo.F_IsIntxt(@txt NVARCHAR(max),@regstr NVARCHAR(max),@restr NVARCHAR(max),@findstr NVARCHAR(max))
    RETURNS int
    WITH EXECUTE AS CALLER --用于在用户在执行函数的时候对引用的对象进行权限检查
    AS
    EXTERNAL NAME [SqlCLRHelper].[sqlCLR.SqlCLRHelper].[F_IsIntxt] --EXTERNAL NAME [注册的程序集名].[命名空间.类名].[方法名]
    GO

  • 相关阅读:
    2017的结束2018的开始
    .NET Core使用swagger进行API接口文档管理
    数据库可扩展设计方案
    容量估算--随时更新
    分库分表设计基础
    利用bucardo搭建PostgreSQL数据库双活
    通过pgAgent实现PostgreSQL上的自动作业
    MySQL主主配置
    Oracle统计信息不准(谓词越界)造成的性能问题
    获取Oracle中SQL语句的执行计划
  • 原文地址:https://www.cnblogs.com/gfbppy/p/10728231.html
Copyright © 2011-2022 走看看