2

dic2つの列englishと。を持つテーブルがありますbanglabanglaテキストファイルからの一括挿入を使用して、列のみにデータを挿入したい。

2列に挿入できるものを試してみました

BULK INSERT dic
FROM 'C:\Users\Imon-Bayazid\Desktop\wordddd\good one\test.txt'
WITH
(
   FIELDTERMINATOR = '\n',
   ROWTERMINATOR = '\n'
)  

しかし、どうすれば1つの特定の列にまとめることができますか?

4

1 に答える 1

2

フォーマットファイルを使用して、ソースファイルのフィールドから宛先テーブルのフィールドにマップできます。

一括挿入は、更新ではなく、新しい行の挿入のみを目的としていることをご存知だと思います。

したがって、次のようなフォーマットファイルがある可能性があります。

<?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="\n"/>
  ... other fields?
 </RECORD>
 <ROW>
  <COLUMN SOURCE="1" NAME="bangla"/>
 </ROW>
</BCPFORMAT>

テーブル'dic'の他の列は、null許容であるか、デフォルト値である必要があります。

次に、フォーマットファイルをBULKINSERTステートメントのオプションとして指定します。

BULK INSERT dic
FROM 'C:\Users\Imon-Bayazid\Desktop\wordddd\good one\test.txt'
WITH
(
   FIELDTERMINATOR = '\n',
   ROWTERMINATOR = '\n',
   FORMATFILE = 'path to my format file.xml'
) 
于 2013-02-16T16:48:47.263 に答える