*

【SQL Server】エクセルをテーブルに取り込む方法

以前にManagement Studioを使ってSQLでエクセルを直接取り込む方法を書きましたが、今回はを実際のテーブルとして取り込む方法。

1.取り込みたいエクセルを用意

・セルに色や罫線があっても問題ありません。

・ネットワーク越しに参照も可能です。

・セルが結合されている場合も問題ありませんが、2つのセルを結合したエクセルを取り込むと片方のみにデータが入力され、片方はnullとなりました。

2.Management Studioを起動し、
取り込み先のデータベースへ接続

Management Studio 起動、データベース接続

3.取込先データベース名を「右クリック」し、
タスク/データインポートを「選択」

Management Studio データのインポート

4.「インポートおよびエクスポート」のウィザードが
起動するので、「次へ」を選択

SQL Server インポートおよびエクスポート ウィザード

5.データソースの選択画面で「データソース」を「Microsoft Excel」にし、「参照」で取り込みたいエクセルを選択し、「次へ」をクリック

Management Studio エクセルインポート ファイル選択

※「次へ」をクリックした際に、エラーポップアップが出力してしまう場合

「操作を完了できませんでした。 追加情報:’Microsoft.ACE.OLEDB.12.0’プロバイダーはローカルのコンピューターに登録されていません。」という以下のエラーポップアップが出力してしまう場合、

http://www.microsoft.com/ja-jp/download/details.aspx?id=23734

のページで「AccessDatabaseEngine.exe」をダウンロードし、インストールすれば解決できるはず。。

Microsoft.ACE.OLEDB.12.0'プロバイダーはローカルのコンピューターに登録されていません。

 6.変換先(インポート先)のサーバー名、データベース名を確認し、「次へ」をクリック

SQL Server インポートおよびエクスポート ウィザード 変換先の指定

7.「1つ以上のテーブルまたはビューからデータをコピーする」にチェックを入れ、「次へ」をクリック

SQL Server インポートおよびエクスポート ウィザード テーブルのコピーまたはクエリの指定

※今回は、エクセルをそのまま取り込むため、「1つ以上のテーブル~」を選択しています。
「転送するデータを指定するためのクエリを記述する」を選べば、SQLを記述し、さらに絞り込むことも可能です。

8.取り込むエクセルシートにチェックを入れ、
「次へ」をクリック。

コピー元のテーブルおよびビューを選択

※「変換先」の欄で取り込みテーブル名を変更することも可能です。
画像は、そのまま[dbo].[Sheet1$]として取り込みます。

また、プレビューを押すと取り込みテーブルを見ることができます。

9.「次へ」をクリック

パッケージの実行

10.「完了」をクリック

Management Studio ウィザードの完了

 11.取り込んだシートの行数を確認し
「閉じる」をクリック

Management Studio 取り込み実行結果

※シートに余計な行が入っていたりすると、余分なレコードが作成されてしまうことがあるので、行数をしっかり確認すること。

 12. オブジェクトエクスプローラーを「最新に更新」し、取り込み先をデータベースを確認する

Management Studio エクセル取り込み結果

以上で終了。

Adsense

関連記事

データベース

【SQL Server 2012】バッチ(コマンドプロンプト)でリストア

バッチ(コマンドプロンプト)を使って、SQL Server 2012のリストアしてみたいと思います。

記事を読む

データベース

【SQL Server】Management Studioを使ったトランザクションログファイルの圧縮

「ファイルが書き出せない」と問い合わせを受け、DBサーバーのマイコンピュータ確認したら、Dドライブ(

記事を読む

データベース

【コマンドプロンプト】cmdでSQLの結果を変数に取得する方法

力技の取得方法をご紹介。というかメモ。 題名には偉そうに書きましたが…なかなか良い方法が見つか

記事を読む

データベース

【SQL Server】Excel VBAでSELECT文を実行してレコードセットへ取得

前回は、テーブルのレコードをVBAで直接更新(Insert/update/delete) 今回

記事を読む

データベース

【SQL Server】バックアップ取得日を確認する方法

前回の記事で、SQL Serverのデータベースのリストアした日付を確認するSQLを作りましたが、今

記事を読む

データベース

【SQL Server】データベース作成日時(リストアした日付)を確認する方法

トラブルの調査をするとき、開発用の環境を作成して、調査するのですが… この環境っていつ作成した

記事を読む

データベース

【SQL Server】Excel VBAでSQLを実行し、レコードを更新(追加、更新、削除)する

VBAでSQL Serverのテーブルに SQL(Insert、Update、Delete)を発行

記事を読む

データベース

【SQL Server 2012】テーブル、カラム、主キー、NULL制約、データ型、長さ、INDEXの有無の一括表示

職場のシステムリプレースに伴い、データベースのテーブル(カラム)の一覧が必要になりました。 普

記事を読む

データベース

【レプリケーション】SQL Server 2012 Expressでレプリケーション

Windows Server 2012のSQL Server 2012 Expressを二台用意して

記事を読む

データベース

【SQL Server】Excel VBAのレコードセットを使ってテーブルの一括更新

前々回は読み取り専用でレコードセットへ取得し、結果をエクセルへ書き出し 前回はVBAから更新S

記事を読む

Adsense

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Adsense

Microsoft Office
【Access】削除クエリの「指定されたテーブルから削除できませんでした。」の対処法

削除クエリで「指定されたテーブルから削除できませんでした。」と ポッ

Microsoft Office
【PowerPoint】表や図形、画像オブジェクトの位置をピッタリ合わせる方法

パワーポイントで、図形や画像等のオブジェクトの細かい位置調整は、 完

データベース
【SQL Server】Excel VBAのレコードセットを使ってテーブルの一括更新

前々回は読み取り専用でレコードセットへ取得し、結果をエクセルへ書き出し

application
【Visual Studio】デバック、ブレークポイントで止まらない。

Visual Studio 2015でVB.netのプログラムをデバッ

データベース
【SQL Server】Excel VBAでSELECT文を実行してレコードセットへ取得

前回は、テーブルのレコードをVBAで直接更新(Insert/updat

→もっと見る

PAGE TOP ↑