【发布时间】:2018-07-11 18:26:38
【问题描述】:
我需要你的帮助:我有一个包含以下内容的文本文件(记事本):
我想将此txt文件中的数据导出到sql表,并确保我使用此代码使用批量插入:
Bulk insert table1
from 'C:\Users\user\Desktop\file.txt'
with
(
FIELDTERMINATOR = '\t',
ROWTERMINATOR = '\n'
)
这里的问题是当我运行这段代码时我得到了 0 行效果,这是因为 txt 文件中单词之间的字段终止符,有时是一个制表符,有时是两个制表符,一次是空格,有时使用此 (;)
那么解决方法是什么?我怎样才能放置多个 FIELDTERMINATOR,或者如果我可以让它自动看到那些终结器?
请我对同一个示例还有另一个问题:如何使 ID 字段自动递增,因为在 SQL 中,当我将 id 列放在这里时,它给了我错误的信息,因为他开始从第一列导入数据。我可以做任何事情,以便批量插入从数据库上的第二个字段开始并留下第一个,因为它的 id 吗?
非常感谢你
【问题讨论】:
-
好的谢谢我加了
-
如果我是你,我会打开该文本文件并使用 Excel 或 Notepad++ 替换(使用正则表达式或其他方式)每个不同的分隔符与一个共同的分隔符。尝试使用 SQL 句柄会很棘手。
-
谢谢你,但那行不通,因为这里不允许使用 excel 或任何其他程序
标签: sql sql-server bulkinsert