如何在 SQL Server 中解析 CLOB 中的数据?
我想使用 OPENROWSET 和 BULK 命令将数据作为 CLOB 加载到 SQL Server 中,然后作为第二步解析 CLOB 并将读取的数据作为表加载。
例如:
SELECT BulkColumn
FROM OPENROWSET (BULK 'c:\somedir\somefile.txt', SINGLE_CLOB) TheFile
产量:
BulkColumn
Col1,Col2,Col3,1,2,3,1,2,3,1,2,3,1,2,3
我想选择它为:
Col1 Col2 Col3
1 2 3
1 2 3
1 2 3
I would like to use OPENROWSET with the BULK command to load data into SQL Server as a CLOB, and as a second step to parse the CLOB and load read the data as a table.
E.g.:
SELECT BulkColumn
FROM OPENROWSET (BULK 'c:\somedir\somefile.txt', SINGLE_CLOB) TheFile
yields:
BulkColumn
Col1,Col2,Col3,1,2,3,1,2,3,1,2,3,1,2,3
I want to select this as:
Col1 Col2 Col3
1 2 3
1 2 3
1 2 3
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
创建格式文件并使用OPENROWSET 或 批量插入 从文本文件导入数据。
示例 format.xml:
这是关键行:
如果数据位于单行中,则终止符字符为“,”而不是“\r\n”。
OPENROWSET 示例:
BULK INSERT 示例:
Create a format file and use OPENROWSET or BULK INSERT to import data from text file.
Example format.xml:
This is the key line:
<FIELD ID="3" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="1" />
where the terminator char is "," and not "\r\n", if the data is in a single line.
Example OPENROWSET:
Example BULK INSERT:
不要将其导入为
OPENROWSET..BULK
您可以使用 BULK INSERT 将其导入为列或 OPENROWSET 本身
Don't import it as
OPENROWSET..BULK
You can use BULK INSERT to import it as columns or OPENROWSET by itself