簡體   English   中英

批量插入SQL Server中的特定列

[英]Bulk insert in a specific column in SQL Server

我有一個表格dic有2列englishbangla 我想使用文本文件中的批量插入將數據插入到bangla列中。

我試過可以插入2列

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

但是如何才能進入一個特定的列???

您可以使用格式文件將源文件中的字段映射到目標表中的字段。

我假設您知道批量插入僅用於插入新行,而不是用於更新。

所以你可能有這樣的格式文件:

<?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'中的任何其他列都需要可以為空或具有默認值。

然后,將格式文件指定為BULK INSERT語句的選項

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'
) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM