7

ファイルから一括挿入する方法を教えてもらえ.xlsxますか?

私はすでに以下のクエリを試しました:

BULK INSERT #EVB FROM 'C:\Users\summer\Desktop\Sample\premise.xlsx' 
WITH (FIELDTERMINATOR = '\t', ROWTERMINATOR = '\n', FIRSTROW = 2);

SELECT * FROM #EVB

も試しましFIELDTERMINATOR like "**\t**", "**,**", "**;**", "**|**"たが、これもうまくいきません。

残念ながら、エラーメッセージはありません。

4

4 に答える 4

28

xlsx ファイルをタブ区切りのテキスト ファイルとして保存し、

BULK INSERT TableName
        FROM 'C:\SomeDirectory\my table.txt'
            WITH
    (
                FIELDTERMINATOR = '\t',
                ROWTERMINATOR = '\n'
    )
GO
于 2012-10-29T15:34:12.460 に答える
2

使用する必要がありますOPENROWSET

この質問を確認してください: import-excel-spreadsheet-columns-into-sql-server-database

于 2012-10-29T15:42:02.270 に答える
1

ドキュメントへのリンク サーバーを作成する

http://www.excel-sql-server.com/excel-import-to-sql-server-using-linked-servers.htm

次に、通常の INSERT または SELECT INTO を使用します。凝ったものにしたい場合は、ADO.NET の SqlBulkCopy を使用できます。これは、DataReader を取得できるほぼすべてのデータ ソースを取り、挿入が非常に高速ですが、データの読み取りは特に高速ではありません。

また、時間をかけて Excel スプレッドシートをテキスト区切りファイルまたはその他のbcp でサポートされている形式に変換してから、BCP を使用することもできます。

于 2012-10-29T15:39:51.210 に答える