【发布时间】:2013-02-16 19:05:33
【问题描述】:
我的名为“字典”的数据库有两列名为“column1”和“column2”。两者都可以接受NULL 值。两列的数据类型都是INT。现在我想使用 bcp 从文本文件中仅插入 column2。我做了一个格式文件。我的格式文件是这样的
<?xml version="1.0"?>
<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RECORD>
<FIELD ID="1" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="7"/>
<FIELD ID="2" xsi:type="CharTerm" TERMINATOR="\r\n" MAX_LENGTH="24"/>
</RECORD>
<ROW>
<COLUMN SOURCE="1" NAME="column2" xsi:type="SQLINT"/>
</ROW>
</BCPFORMAT>
我的批量声明就像
BULK INSERT dictionary
FROM 'C:\Users\jka\Desktop\n.txt'
WITH
(
FIELDTERMINATOR = '\n',
ROWTERMINATOR = '\n',
FORMATFILE = 'path to my format file.xml'
)
但它没有工作?我该如何解决这个问题?
N:B: 我的 txt 文件看起来像
123
456
4101
......
另一个问题已编辑: 我可以通过这种技术填充一个列,但是当我像以前一样从第一行填充文本文件中的另一列时。我该怎么做???
【问题讨论】:
-
我没有看到任何 Visual Studio 或 C#
-
我假设
dictionary是表的名称而不是数据库的名称。对吗? -
是的,字典是表的名称@peterm
标签: database sql-server-2008 bulkinsert bcp