「dictionary」という名前のデータベースには、「column1」と「column2」という名前の 2 つの列があります。どちらも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
……
編集されたもう1つの質問:この手法で1つの列を埋めることができますが、1行目から前のようにテキストファイルから別の列を埋めるとき。どうやってやるの ???