从json中提取数据并插入SQL Server

时间:2017-02-09 07:37:41

标签: sql-server json

我尝试从JSON字符串中提取数据并插入到SQL Server表中。但是我得到了这个错误:

  

关键字'附近有'的语法不正确。如果此语句是公用表表达式,xmlnamespaces子句或更改跟踪上下文子句,则必须以分号结束前一个语句。

这是我的代码

declare @json nvarchar(max) = '{
 "id" : 2,
 "firstName": "John",
 "lastName": "Smith",
 "isAlive": true,
 "age": 25,
 "dateOfBirth": "2015-03-25T12:00:00" 
 }'

SELECT *
FROM OPENJSON(@json)
     WITH (id int, firstName nvarchar(50), lastName nvarchar(50),
           age int, dateOfBirth datetime2)

1 个答案:

答案 0 :(得分:-1)

你正确的语法:

OPENJSON将JSON文档转换为rowset的函数

declare @json nvarchar(max) = '{
 "id" : 2,
 "firstName": "John",
 "lastName": "Smith",
 "isAlive": true,
 "age": 25,
 "dateOfBirth": "2015-03-25T12:00:00"
 }';

SELECT *   
FROM OPENJSON(@json)  
;WITH (id int,  firstName nvarchar(50), lastName nvarchar(50), isAlive bit, age int, dateOfBirth datetime2)