sql xml 批量插入
时间: 2023-07-21 09:34:39 浏览: 121
可以使用 SQL Server 的 OPENXML 函数来实现 XML 批量插入。具体步骤如下:
1. 创建一个 XML 文件,文件中包含要插入的数据。
2. 在 SQL Server 中创建一个临时表,该表的结构与要插入的数据一致。
3. 使用 OPENXML 函数将 XML 数据解析成表格形式,并将数据插入到临时表中。
4. 将临时表中的数据插入到目标表中。
下面是一个示例:
假设要插入以下 XML 数据:
```xml
<Root>
<Person>
<Name>Tom</Name>
<Age>20</Age>
</Person>
<Person>
<Name>Jerry</Name>
<Age>22</Age>
</Person>
</Root>
```
可以使用以下 SQL 代码实现批量插入:
```sql
-- 创建临时表
CREATE TABLE #TempTable
(
Name VARCHAR(50),
Age INT
)
-- 解析 XML 数据并插入到临时表中
DECLARE @XmlData XML
SET @XmlData = '<Root>
<Person>
<Name>Tom</Name>
<Age>20</Age>
</Person>
<Person>
<Name>Jerry</Name>
<Age>22</Age>
</Person>
</Root>'
INSERT INTO #TempTable(Name, Age)
SELECT
Tbl.Col.value('(Name)[1]', 'VARCHAR(50)') AS Name,
Tbl.Col.value('(Age)[1]', 'INT') AS Age
FROM @XmlData.nodes('/Root/Person') Tbl(Col)
-- 将临时表中的数据插入到目标表中
INSERT INTO PersonTable(Name, Age)
SELECT Name, Age FROM #TempTable
-- 删除临时表
DROP TABLE #TempTable
```
注意,在实际使用中,需要根据实际情况修改表名、列名和 XML 数据。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)