sql server clr json to table
背景
SQL SERVER 2016 之前版本不支持 直接解析json
步骤:
1 vs 数据库项目
2 生成dll
3 加入信任
DECLARE @hash AS BINARY(64) = (SELECT HASHBYTES('SHA2_512', (SELECT * FROM OPENROWSET (BULK 'C:\Users\BianGX\source\repos\JsonSQLCLR\JsonSQLCLR\bin\Debug\JsonSQLCLR.dll', SINGLE_BLOB) AS [Data])))
EXEC sp_add_trusted_assembly @hash,N'JsonSQLCLR '
4 添加程序集
可以手动添加和删除
5 创建存储过程
CREATE PROCEDURE[dbo].[Json2Table] (
@jsonString NVARCHAR(max) )
WITH EXECUTE AS CALLER
AS
EXTERNAL NAME JsonSQLCLR.StoredProcedures.Json2Table --[SQL程序集名].[命名空间.类名].[方法名]
6
--1 查看 现有hash
SELECT * FROM sys.trusted_assemblies GO
-- 2 删除原来的信任hash
DECLARE @hash AS BINARY(64);
SET @hash =
(
SELECT hash
FROM sys.trusted_assemblies
WHERE description = 'JsonSQLCLR'
AND create_date = '2022-01-22 23:53:35.2809569'
); EXEC sys.sp_drop_trusted_assembly @hash; GO
-- 添加新的 DECLARE @hash AS BINARY(64) = (SELECT HASHBYTES('SHA2_512', (SELECT * FROM OPENROWSET (BULK 'C:\Users\BianGX\source\repos\JsonSQLCLR\JsonSQLCLR\bin\Debug\JsonSQLCLR.dll', SINGLE_BLOB) AS [Data]))) EXEC sp_add_trusted_assembly @hash,N'JsonSQLCLR ' GO
--创建存储过程
CREATE PROCEDURE[dbo].[Json2Table] (
@jsonString NVARCHAR(max) )
WITH EXECUTE AS CALLER
AS
EXTERNAL NAME JsonSQLCLR.StoredProcedures.Json2Table --[SQL程序集名].[命名空间.类名].[方法名]
sql server clr json to table的更多相关文章
- SQL Server CLR 使用 C# 自定义存储过程和触发器
资源来源:https://www.cnblogs.com/Brambling/p/8016060.html SQL Server CLR 使用 C# 自定义存储过程和触发器 这一篇博客接着上一篇博 ...
- SQL Server CLR 使用 C# 自定义函数
一.简介 Microsoft SQL Server 2005之后,实现了对 Microsoft .NET Framework 的公共语言运行时(CLR)的集成.CLR 集成使得现在可以使用 .NET ...
- 三、SQL Server 对JSON的支持
一.SQL Server 对JSON的支持 一.实现效果 现在 我用数据库是sql2008 ,共计2万数据. 每一条数据里面的有一个为attribute字段是 json存储状态属性, 我怎么查看 ...
- SQL Server 2016 JSON原生支持实例说明
背景 Microsoft SQL Server 对于数据平台的开发者来说越来越友好.比如已经原生支持XML很多年了,在这个趋势下,如今也能在SQLServer2016中使用内置的JSON.尤其对于一些 ...
- .NET Core 1.1日期解析无APi、SQL Server数据转换JSON
前言 在批量导入Excel中的数据时发现出生日期为整数也就是为天数,结果倒腾了翻,这是其一,其二是数据库中的某一列存的是JSON数据,但是场景是为了作为作业来运行,此时不得不将筛选出的数据手动拼接成J ...
- SQL SERVER CLR Trigger功能
通过在 Microsoft SQL Server 中托管 CLR(称为 CLR 集成),开发人员可以在托管代码中编写存储过程.触发器.用户定义函数.用户定义类型和用户定义聚合函数, 改变了以前只能通过 ...
- 转载:SQL Server 2008-建立分区表(Table Partition) 转载
数据库结构和索引的是否合理在很大程度上影响了数据库的性能,但是随着数据库信息负载的增大,对数据库的性能也发生了很大的影响.可能我们的数据库在一开始有着很高的性能,但是随着数据存储量的急速增长—例如订单 ...
- 【转】SQL SERVER CLR存储过程实现
最近做一个项目,需要做一个SQL SERVER 2005的CLR的存储过程,研究了一下CLR的实现.为方便以后再使用,在这里总结一下我的实现流程,也供对CLR感兴趣但又不知道如何实现的朋友们做一下参考 ...
- sql server CLR
1. 配置sql server 启用CLR 在SQL Server2005/2008里面,CLR默认是关闭的.可以使用如下SQL语句开启CLR. sp_configure 'show advanced ...
- SQL Server之JSON 函数
SQL Server 2005开始支持XML数据类型,提供原生的XML数据类型.XML索引及各种管理或输出XML格式的函数.随着JSON的流行,SQL Server2016开始支持JSON数据类型,不 ...
随机推荐
- curl:(6) Could not resolve host: baidu.com; Unknown error
问题描述 有段时间没操作CentOS了,然后启动Virtualbox中的CentOS之后,发现网络不通,ping baidu.com 出现错误 curl:(6) Could not resolve h ...
- C语言中的转义字符\b的含义
\b的含义是,将光标从当前位置向前(左)移动一个字符(遇到\n或\r则停止移动),并从此位置开始输出后面的字符(空字符\0和换行符\n除外) 参考: https://blog.csdn.net/har ...
- ALV值存放图标
SPAN { font-family: "新宋体"; font-size: 12pt; color: rgba(0, 0, 0, 1); background: rgba(255, ...
- 91、mysql批量删除表
## 存储过程实现 drop PROCEDURE if EXISTS rush; create PROCEDURE rush() BEGIN ## 创建临时表,插入快照数据 drop table if ...
- Zero-Shot Temporal Action Detection via Vision-Language Prompting概述
1.针对的问题 现有的方法在推断时只能识别之前见过的类别,即训练时出现过的类别,而为每个感兴趣的类收集和注释大型训练集是昂贵的. 2.主要贡献 (1)研究了如何利用大量预训练的ViL模型进行未修剪视频 ...
- spring注解SQL注意事项
目前有两个类:机构.职员 package com.common.vo; public class Org{ public long id; public String name; public Str ...
- vue项目element-ui组件打包后组件显示方框解决方式
在 utils.js文件添加一句代码 publicPath:'../../',
- .NET在单台Windows2008下百万TCP连接测试
测试客户端: 客户端程序建立TCP连接,发送一条几个字节的数据. 虚拟机8台,PC机8台,服务器1台. 设置MaxUserPort=60000,有一台机没有设置约在1.5万左右.最后因为差一点到100 ...
- QDateEdit
self.dateEdit.setCalendarPopup(True) # 日历增加 # 日历转化位str类型begintime = self.dateEdit.dateTime().toStrin ...
- html导出表格xls格式
<!DOCTYPE html> <html> <head> <title>table2xls</title> <meta charse ...