首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何使用SQL命令将JSON文件数据插入sql Server表

如何使用SQL命令将JSON文件数据插入sql Server表
EN

Stack Overflow用户
提问于 2020-04-23 05:32:21
回答 1查看 415关注 0票数 0

我对SQL不是很熟悉。

我的SQL Server数据库中有一个名为Product的表

代码语言:javascript
运行
AI代码解释
复制
CREATE TABLE [dbo].[Product] (
[Age]          INT           NULL,
[Name]         NVARCHAR (50) NULL,
[Id]           NVARCHAR (50) NULL,
[Price]        DECIMAL (18)  NULL,
[ImageUrl]     NVARCHAR (50) NULL,
[Snippet]      NVARCHAR (50) NULL
)

我有一个JSON文件(位于D:\demo\myjson.json中),其中存储了我所有的产品信息,如下所示:

代码语言:javascript
运行
AI代码解释
复制
[
  {
      "Age": 0, 
      "Id": "motorola-xoom-with-wi-fi", 
      "ImageUrl": "static/imgs/phones/motorola-xoom-with-wi-fi.0.jpg", 
      "Name": "Motorola XOOM\u2122 with Wi-Fi", 
      "Price":5000,
      "Snippet": "The Next, Next Generation\r\n\r\nExperience the future with Motorola XOOM with Wi-Fi, the world's first tablet powered by Android 3.0 (Honeycomb)."
  }, 
  {
      "Age": 1, 
      "Id": "motorola-xoom", 
      "ImageUrl": "static/imgs/phones/motorola-xoom.0.jpg", 
      "Name": "MOTOROLA XOOM\u2122", 
      "Price":5000,
      "Snippet": "The Next, Next Generation\n\nExperience the future with MOTOROLA XOOM, the world's first tablet powered by Android 3.0 (Honeycomb)."
  }

]

如何编写sql来获取此文件并将数据导入到我的Product表中,而不是手动执行此操作?

我使用的是SQL Server 2016和SSMS。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-23 06:01:00

您可以尝试一种方法,它使用OPENROWSET() (读取文件)和具有显式模式的OPENJSON() (tp解析输入JSON)。请注意,OPENROWSET()需要额外的permissions。如果文件包含unicode (widechar)输入,则应使用SINGLE_NCLOB

代码语言:javascript
运行
AI代码解释
复制
DECLARE @json nvarchar(max)

SELECT @json = BulkColumn
FROM OPENROWSET (BULK 'D:\demo\myjson.json', SINGLE_CLOB) as j

INSERT INTO [Product] ([Age], [Name], [Id], [Price], [ImageUrl], [Snippet])
SELECT [Age], [Name], [Id], [Price], [ImageUrl], [Snippet]
FROM OPENJSON(@json) WITH (
   Age int '$.Age',
   Name nvarchar(50) '$.Name',
   Id nvarchar(50) '$.Id',
   ImageUrl nvarchar(50) '$.ImageUrl',
   Price decimal(18) '$.Price',
   Snippet nvarchar(50) '$.Snippet'
)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61379993

复制
相关文章
管理sql server表数据_sql server如何使用
表是SQL Server中最基本的数据库对象,用于存储数据的一种逻辑结构,由行和列组成, 它又称为二维表。 例如,在学生成绩管理系统中,表1–是一个学生表(student)。
全栈程序员站长
2022/09/23
1.8K0
管理sql server表数据_sql server如何使用
使用扩展的JSON将SQL Server数据迁移到MongoDB
在评估数据库系统的价值的时候,一个重要的目标就是能将数据存储到已有的数据库,也能将从已存在的数据库中的数据取出来。这篇文章就是从SQL Server数据库中获取数据迁移到MongoDB中,反之亦然。
MongoDB中文社区
2019/04/22
3.7K0
使用扩展的JSON将SQL Server数据迁移到MongoDB
SQL server 数据库基本插入、删除命令
一、实验素材:附加学生信息表(student) 二、实验要求: 1、 查询student表中所有学生的信息 select * from student 2、 查询student表中“姓名”“所在班
L宝宝聊IT
2018/06/20
1K0
Sql Server 建表Sql
Sql Server建表太麻烦了,如果想去修改主键的自增是不可能的。不如我们直接一开始确定SQL,直接修改SQL,这在国外某个开源项目是比较推荐的方式(每修改一条SQL,再去修改SQL文件,然后执行SQL)。
收心
2022/10/28
2.7K0
如何将SQL Server表驻留内存和检测
将SQL Server数据表驻留内存是SQL Server提供的一项功能,在一般小型系统的开发过程中估计很少会涉及到。这里整理了相关文档资料,演示如何把SQL Server中一个表的所有数据都放入内存中,实现内存数据库,提高实时性。
Java架构师必看
2021/03/22
1K0
MySQL 批量插入表数据 sql
INSERT INTO `swork_info`.`quality_data_app_base_value` (`gmt_create`, `gmt_modified`, `app_id`, `base_value`, `type`) select now(), now(), app_id, 100, '0' from application;
一个会写诗的程序员
2018/08/17
4.6K0
怎么将sql文件导入数据库_mysql导入sql文件命令
在导入.sql文件之前,设置一下编码模式,防止出现中文乱码的情况(第一次导入就出现了中文乱码,所以中添加一步防止出现乱码情况)。
全栈程序员站长
2022/11/11
17.6K0
SQL Server 数据表复制
有数据表 A, 希望将他的内容导出到另一张表 B,此时 B 并未创建,希望在导出的同时创建表 B。
tonglei0429
2019/07/22
1.9K0
使用Navicat将SQL Server数据迁移到MySQL
在开发项目的时候,往往碰到的不同的需求情况,兼容不同类型的数据库是我们项目以不变应万变的举措之一,在底层能够兼容多种数据库会使得我们开发不同类型的项目得心应手,如果配合快速的框架支持,那更是锦上添花的举措。我开发的项目或者框架,采用了微软企业库Enterprise Library的模块,倾向于支持多种数据库,也为我们开发不同类型的项目提供非常方便、快速、统一的处理方式。一般常规的数据库包括MS Server、Oracle、MySQL、PostgreSQL、SQLite、DB2、国产达梦等数据库,本篇随笔主要介绍如何实现从MS SQLServer到Mysql数据库,并为不同数据库类型添加实现底层的解决思路。
星哥玩云
2022/08/17
4.3K0
使用Navicat将SQL Server数据迁移到MySQL
sql清空表数据命令
有三种清空方式: 1.delete from 表名 :逐行删除表数据速度比较慢,不适合删除数据量大的表。 2.truncate table 表名 :删除表中所有数据并且保留表结构,但是不能撤消还原。 3.drop from 表名 :表数据和表结构一起删除,在实践过程中删除大数据量表数据。使用 1,2这两种方法需要等待好久才能清空完成。 有一个较快的方法是先导出表结构,对原先表进行删除,然后再重建。
全栈程序员站长
2022/07/01
2.9K0
sql server 表分区
添加文件分组 image.png 创建文件,并分配文件组 image.png 分区函数 CREATE PARTITION FUNCTION partCustomerStockHistory (d
易兒善
2018/08/21
6220
sql server 表分区
SQL Server表分区
但是如果是分区表的话,表数据就会按照你指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在不同的磁盘下由多个cpu进行处理。这样文件的大小随着拆分而减小,还得到硬件系统的加强,自然对我们操作数据是大大有利的。
Vincent-yuan
2020/04/09
9270
将Excel文件数据库导入SQL Server
将Excel文件数据库导入SQL Server的三种方案//方案一: 通过OleDB方式获取Excel文件的数据,然后通过DataSet中转到SQL Server
Java架构师必看
2021/03/22
2.3K0
SQL Server 分页+json分享
最近封装一个轻量级的ORM用到了分页,以前只知道使用Row_Number函数,现在发现sqlserver 新增的 {orderBy} offset {start} rows fetch next {pageSize} rows only 也挺好用的。
李明成
2020/07/03
1.4K0
SQL将本地图片文件插入到数据库
EXEC sp_configure 'show advanced options', 1 GO RECONFIGURE GO EXEC sp_configure 'xp_cmdshell', 1 GO RECONFIGURE GO --生成格式化文件 在此基础上再进行编辑,自己创建一个格式化文件有点问题 --10.0 --1 --1 SQLBINARY 0 0 "" 1 FileData "" --CREATE TABLE [dbo].[tblFile]( --[FileID] [bigint] I
跟着阿笨一起玩NET
2018/09/19
3K0
SQL Server —(CDC)监控表数据(转译)
  在SQL Server 2008版本之前,对表数据库的变更监控,我们通常使用DML触发器进行监控,把DML操作中的INSERT/UPDATE/DELETE数据记录下来,但是触发器的维护比较困难;
全栈程序员站长
2021/11/29
1.7K0
SQL Server —(CDC)监控表数据(转译)
hibernate sql查询_sql server查询命令
SQLQuery接口用于接受一个sql语句进行查询,然后调用list()或uniqueResult()进行查询。但是sql语句不会直接封装到实体对象里,需要手写代码才可以封装到实体中。
全栈程序员站长
2022/11/11
2.7K0
sql server 修改表结构
文章来自http://blog.csdn.net/huwei2003/article/details/6076051
乔达摩@嘿
2020/09/11
1.9K0
SQL server无法更改表
在设计器中,选择表设计器和数据库设计器,将阻止保存要求重新创建表的更改选项取消勾选 再次编辑表中内容时就不会再有错误弹窗。
magize
2023/07/11
2870
SQL server无法更改表
sql 创建表_sql server建表语句
在线Sqlite查看器|修改器 http://lzltool.com/sqlite-viewer
全栈程序员站长
2022/11/17
2.2K0
sql 创建表_sql server建表语句

相似问题

如何使用SQL查询将JSON web服务数据插入SQL表?

11

无法将数据从JSON插入到SQL server表中

110

SQL使用命令将.sql文件中的数据插入到表中

30

将JSON数据逐行插入SQL表

13

将JSON数组大容量插入SQL Server表

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文