9

テーブルに挿入する次のクエリがあります

    BULK
     INSERT tblMain
     FROM 'c:\Type.txt'
     WITH
     (
      FIELDTERMINATOR = ',',
      ROWTERMINATOR = '\n'
     )
    GO

メッセージを取得します

メッセージ 4860、レベル 16、状態 1、行 1
一括読み込みできません。ファイル「c:\Type.txt」が存在しません。

ファイルは明らかにそこにあります。私が見落としているものはありますか?

4

3 に答える 3

29

それを見てください: 一括ロードできません。ファイル「c:\data.txt」が存在しません

そのファイルは SQL Server のC:\ドライブにありますか??

SQL BULK INSERT などは、常に SQL Server マシンのローカル ドライブでのみ機能します。SQL Server が自分のローカル ドライブに到達できません。

ファイルを SQL Server の C:\ ドライブに置き、再試行する必要があります。

于 2012-04-04T18:07:07.810 に答える
16

一括インポートユーティリティの構文については、こちらで説明しています

http://msdn.microsoft.com/en-us/library/ms188365.aspx

> BULK INSERT     [ database_name . [ schema_name ] . | schema_name . ]
> [ table_name | view_name ] 
>       FROM 'data_file' 
>      [ WITH 
>     (

data_file引数に関する注記は次のように述べています

' データファイル '

指定されたテーブルまたはビューにインポートするデータを含むデータファイルのフルパスです。BULK INSERTは、ディスク(ネットワーク、フロッピーディスク、ハードディスクなどを含む)からデータをインポートできます。

data_fileは、SQLServerが実行されているサーバーからの有効なパスを指定する必要があります。data_fileがリモートファイルの場合は、汎用名前付け規則(UNC)名を指定します。UNC名の形式は\Systemname\ ShareName \ Path\FileNameです。たとえば、\ SystemX \ DiskZ \ Sales\update.txtです。

于 2012-04-05T06:09:24.203 に答える