1

.txtSQL Server テーブルに2 つのファイルをインポートする必要があります。以下は私のコードの 2 つの部分です。最初はテーブルを作成し、2 番目の部分は最初のファイルを入力しています。

最初の部分は問題ありませんが、2 番目の部分でエラーが発生します。

メッセージ 4864、レベル 16、状態 1、行 1
行 1、列 1 (TestAcctID) の一括読み込みデータ変換エラー (型の不一致または指定されたコードページの無効な文字)。
メッセージ 4864、レベル 16、状態 1、行 1
行 2、列 1 (TestAcctID) の一括読み込みデータ変換エラー (型の不一致または指定されたコードページの無効な文字)。

Create Table TestAcct(TestAcctID int identity(1,1),
                 LastName varchar(30), 
                 FirstName varchar(30), 
                 PhoneNumber varchar(10),
                 AccountType varchar(5),
                 AccountNumber varchar(30),
    constraint PKTestAcct Primary Key(TestAcctID))

/*Insert info from .txt file*/

BULK INSERT TestAcct
FROM 'c:\Users\lraffi\desktop\File1.txt'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
GO

私の問題は、私のCSVファイルのテキストが''各単語の周りにあることだと思います.andについてはすでに書いていFIELD TERMINATOR= ','ますROW TERMINATOR= '\n'が、' '. それが問題だと思う人はいますか??

これが私の.txtファイルの内容です:

File1.txt: 'FirstName', 'LastName', 'AccountNumber', 'PhoneNumber', 'AccountType' 'Bob','Jones','123456789','8451111111','RES' 'Jane','DOE', '987654321','8452222222','COM''マイク','スミス','123459876','8453333333','RES'

File2.txt: 'RecordCount=3' 'AccountNumber', 'PhoneNumber', 'AccountType','FirstName', 'LastName' '222222222','8454444444','RES','Bill','James' '333333333' ,'8455555555', 'COM','John','Barton' '444444444','8456666666','RES','William', 'Stark' 'End'

4

1 に答える 1

0

フォーマットファイルが必要になると思います。始めるためのいくつかの例を次に示します

次に、フォーマットファイルのテキスト修飾子(')を考慮する必要があります。

<?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="30"/>
  <FIELD ID="2" xsi:type="CharTerm" TERMINATOR="','" MAX_LENGTH="30"/>
  <FIELD ID="3" xsi:type="CharTerm" TERMINATOR="'\r\n" MAX_LENGTH="30"/>
 </RECORD>
 <ROW>
  <COLUMN SOURCE="1" NAME="FirstName" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="2" NAME="LastName" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="3" NAME="AccountNumber" xsi:type="SQLNVARCHAR"/>
 </ROW>
</BCPFORMAT>
于 2013-02-18T03:40:28.490 に答える