CREATE PROCEDURE sp_GetJsonFields
(
@Json VARCHAR(MAX)
) AS
BEGIN
SELECT @Json=REPLACE(@Json,'{','')
SELECT @Json=REPLACE(@Json,'}',',')
DECLARE @temp VARCHAR(MAX)
DECLARE @objName VARCHAR(4000)
DECLARE @objValue VARCHAR(4000)
DECLARE @fieldSql VARCHAR(MAX)
SET @fieldSql='select ' WHILE LEN(@Json)>0 --LEN 函数返回文本字段中值的长度
BEGIN
--通过CHARINDEX如果能够找到对应的字符串,则返回该字符串位置,否则返回0
SELECT @temp=SUBSTRING(@Json,0,CHARINDEX(',',@Json,0))--截取到该逗号的位置字符串
--
SELECT @Json=RIGHT(@Json,LEN(@Json)-LEN(@temp)-1)--再获取右边字符串信息 ---取对象字段名称信息
set @objName =left(@temp,CHARINDEX(':',@temp,0)-1)
--取对象字段名称对应的值
set @objValue =right(@temp,len(@temp)-CHARINDEX(':',@temp,0)) --PRINT @objName+'='+ @objValue+';'
--替换""字符为''
set @fieldSql=@fieldSql+REPLACE(@objValue,'"','''')+' as '+REPLACE(@objName,'"','')+','
END
SET @fieldSql=LEFT(@fieldSql,LEN(@fieldSql)-1)
--EXEC sp_executesql @fieldSql
EXEC (@fieldSql)
END
GO EXEC sp_GetJsonFields @json=
'{"CarGid":"835A38CC-3D19-4123-AB7A-9AFC9704818A","CarQty":1,
"CarPrice":300000.00,"ShopGid":"835A38CC-6D19-4323-AB7A-6AFC9704765A","ShopName":"全新幻影新能源汽车直售店",
"CarName":"幻影系能源SL00",
"CarImage":"http:\/\/Carimg.Soft.com\/images9f024a01993cc68f89aab295"}'

抛砖引玉 引荐过来的东西 注意细节方面 就是 存贮的字段值中的json数据中 其它字段值的中间不能有逗号存在不然会引起 查值异常

譬如:"CarName":"幻影系能源SL00", 不能存在值"CarName":"幻影系能源SL00,全新一代特别奉献版,越野系列",

生成数据:

SQL存储实现将JSON自动转化成SQL数据列的更多相关文章

  1. sql server编写通用脚本自动统计各表数据量心得

    工作过程中,如果一个数据库的表比较多,手工编写统计脚本就会比较繁琐,于是摸索出自动生成各表统计数据量脚本的通用方法,直接上代码: /* 脚本来源:https://www.cnblogs.com/zha ...

  2. SQL Server2016 原生支持JSON

    SQL Server2016 原生支持JSON SQL Server 2005 开始支持 XML 数据类型,提供原生的 XML数据类型.XML 索引以及各种管理 XML 或输出 XML 格式的函数. ...

  3. NewSQL——优化的SQL存储引擎(TokuDB, MemSQL)+?

    NewSQL 是对各种新的可扩展/高性能数据库的简称,这类数据库不仅具有NoSQL对海量数据的存储管理能力,还保持了传统数据库支持ACID和SQL等特性. NewSQL 是指这样一类新式的关系型数据库 ...

  4. SQL Server 2014 虚拟机的自动备份 (Resource Manager)

    自动备份将在运行 SQL Server 2014 Standard 或 Enterprise 的 Azure VM 上自动为所有现有数据库和新数据库配置托管备份到 Azure. 这样,便可以配置使用持 ...

  5. (译)Windows Azure的7月更新:SQL数据库,流量管理,自动缩放,虚拟机

    Windows Azure的7月更新:SQL数据库,流量管理,自动缩放,虚拟机 今早我们释出一些很棒的Windows Azure更新.这些新的提升包括:SQL数据库:支持SQL自动导出和一个新的高级层 ...

  6. --自动创建备份SQL

    --自动创建备份SQL DECLARE @dbname VARCHAR(50) ,--要备份的数据库名称 @bakname VARCHAR(50) ,--备份后的bat名称 @sql VARCHAR( ...

  7. js将json字符串转化成json对象的方法

    js将json字符串转化成json对象的方法: JSON.parse(jsonObject)

  8. javascript中字符串格式json如何转化成json对象

    什么是JSON JSON(JavaScript Object Notation)是一种优美的JavaScript对象创建方法.JSON也是一种轻量级数据交换格式.JSON非常易于人阅读与编写,同时利于 ...

  9. SQL中采用Newtonsoft.Json处理json字符串

    原文 SQL中采用Newtonsoft.Json处理json字符串 使用环境: SQL Server2005; VS2010; 关于SQL中部署CLR程序集的方法,网上一搜一大把,需要了解的自行查阅, ...

随机推荐

  1. 大数据:Hadoop(HDFS 读写数据流程及优缺点)

    一.HDFS 写数据流程 写的过程: CLIENT(客户端):用来发起读写请求,并拆分文件成多个 Block: NAMENODE:全局的协调和把控所有的请求,提供 Block 存放在 DataNode ...

  2. 网络服务-SAMBA

    1. Samba 概述 SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内不同操作系统的计算机之间提供文件及打印机等资源的共享 ...

  3. Httpd服务进阶知识-基于Apache Modele的LAMP架构之PhpMyAdmin案例

    Httpd服务进阶知识-基于Apache Modele的LAMP架构之PhpMyAdmin案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常见LAMP应用 PhpMyAdm ...

  4. KVM虚拟机被OOM killer

    一.线上环境的虚拟机被KVM物理机kill掉 Linux 内核根据应用程序的要求分配内存,通常来说应用程序分配了内存但是并没有实际全部使用,为了提高性能,这部分没用的内存可以留作它用,这部分内存是属于 ...

  5. css3过渡动画 transition

    transition CSS3 过渡是元素从一种样式逐渐改变为另一种的效果. 要实现这一点,必须规定两项内容: 指定要添加效果的CSS属性 指定效果的持续时间 例如 这是下面代码的预览界面预览界面 & ...

  6. c语言实现基本的数据结构(五) 单链队列

    #include <stdio.h> #include <tchar.h> #include <stdlib.h> #define MaxQueueSize 100 ...

  7. 算法 dfs 二叉树的所有路径

    480. 二叉树的所有路径 给一棵二叉树,找出从根节点到叶子节点的所有路径. Example 样例 1: 输入:{1,2,3,#,5} 输出:["1->2->5",&q ...

  8. 图像处理中Stride和Width的关系

    一行有 11 个像素(Width = 11), 对一个 32 位(每个像素 4 字节)的图像, Stride = 11 * 4 = 44. 但还有个字节对齐的问题, 譬如: 一行有 11 个像素(Wi ...

  9. Solr的集群搭建(索引库)

    Solr的集群的搭建 Solr集群原理 SolrCloud概念以及结构 概念: SolrCloud(Solr云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用Solr ...

  10. wordpress如何防止url被篡改

    一位网友反馈说他的wordpress网站经常被篡改url,访问网站直接跳到不相关的页面,只能进入数据库那修改wp_option表中修改homeurl字段才能恢复.如果不知道原理就只能恢复数据库甚至重新 ...