web-dev-qa-db-ja.com

ExcelスプレッドシートをSQLServerにインポートするにはどうすればよいですか?

ExcelスプレッドシートをSQLServer 2005にインポートする必要があります。これを実現するには、どのような手順を実行する必要がありますか?

13
Fee

「データ変換サービス」ウィザードはあなたの友達です。

ここでの手順は、SQL Server2000を想定しています。

  • SQL Server EnterpriseManagerを開きます
  • 適切なサーバーを右クリックします
  • [データのインポート]を選択します
  • ウィザードを実行します。
    • 最初の画面で[次へ]をクリックします
    • データソースとして「MicrosoftExcel」を選択します
    • XLSファイルへのパスを入力し、[次へ]をクリックします。
    • データベースの接続の詳細を入力し、[次へ]をクリックします。

データをどのように処理するかに応じて、いくつかの新しいオプションがあります。 1回限りのジョブの場合、通常、すべてのExcelデータをインポートしてから、SQL Serverで編集するのが最も簡単ですが、複数のファイルでこのアクションを繰り返す場合は、非常にセクシーなインポートスクリプトを作成することをお勧めします。

再度実行する場合は、ウィザードを使用してDTSパッケージを保存し、EnterpriseManagerの[データ変換サービス]セクションで編集できます。これは方法を学ぶのに良い方法です。 DTS動作します。

18
RB.

oPENROWSETでも実行できます

INSERT INTO SOMETABLE SELECT * FROM OPENROWSET( 'Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\testing.xls','SELECT * FROM [Sheet1$]')
9
SQLMenace

別の迅速で(非常に)汚い解決策は、次のようにExcelシートに数式を追加することです。

="INSERT INTO table1(col1, col2, col3) SELECT " & A1 & ", '" & B1 & "', '" & C1 & "'"

これをコピーして(CTRL + D)、準備完了です。

8
edosoft