我在 json 文件 (C:\db.json) 中有一个表:
[{"_id":"81743561","_record_number":"1","_form_id":"618213","_user_id":"218754",...},
{"_id":"81782299","_record_number":"2","_form_id":"618213","_user_id":"218754",...},
{"_id":"81784481","_record_number":"3","_form_id":"618213","_user_id":"218754",...}]
它有大约 60 个“列”。我有 100 个这样的“表”要导入 SQL Server,每个表都有自己的架构。我发现可以这样做:
Declare @JSON varchar(max)
SELECT @JSON=BulkColumn
FROM OPENROWSET (BULK 'C:\db.json', SINGLE_CLOB) import
SELECT *
FROM OPENJSON (@JSON)
WITH
(
_id integer,
_record_number integer,
_form_id integer,
_user_id integer,
...
)
我真的需要避免手动编写列列表。一种选择是解析 json 并生成列列表。在我开始走这条路之前,我想知道是否有一种方法可以避免列出列,类似于SELECT *
?