【SQL Server 2012】SQLでエクセルをテーブルとして表示させる方法
公開日:
:
最終更新日:2015/01/12
データベース Management Studio, SQL, エクセル, 表示
SQL Management Studioを使用してインポート等は使用せずにSQLのみでテーブルを表示する手順をご紹介。
(1)表示したいエクセルファイルを2003形式で保存
表示させたいエクセルファイルを開き/Excel97-2003ブックで保存しなおします。
(2)SQL Server 2012がインストールされているサーバーのローカルへ保存したエクセルファイルを配置。
(3)Management Studioを起動し、以下のクエリを実行。
select * from OPENROWSET(‘Microsoft.ACE.OLEDB.12.0’, ‘Excel 8.0;DATABASE=【表示したいエクセルのフルパス】;IMEX=1;HDR=YES;’, ‘SELECT * from [【シート名】$]’) as Excelテーブル; |
赤字の部分は環境に合わせて変更します。 たとえば、SQL Server上の「C:\temp\顧客.xls」にエクセルファイルを配置し 表示したいシート名が「Sheet1」の場合
select * from OPENROWSET(‘Microsoft.ACE.OLEDB.12.0’, ‘Excel 8.0;DATABASE=C:\temp\顧客.xls;IMEX=1;HDR=YES;’, ‘SELECT * from [Sheet1$]’) as Excelテーブル; |
上記のようになります。
後は、SQLを実行すれば
※画像の個人情報は架空のデータです。実際には存在しません。
こんな感じに取り込む(表示)することができます。
ちなみに、SQLコマンドの「IMEX=1」「HDR=YES」ですが、
IMEX=1 ですべての行を文字列として扱い HDRP=YES で1行目をヘッダーとして扱っています。
このSQLコマンドは、値が異なるデータの一括修正時などにすごい便利ですヽ(・∀・ )ノ
Adsense
関連記事
-
-
【SQL Server 2012 Express】Windows Server 2012にインストールしてみる
Windows Server 2012にSQL Server 2012をインストールしてみる。 以
-
-
【コマンドプロンプト】cmdでSQLの結果を変数に取得する方法
力技の取得方法をご紹介。というかメモ。 題名には偉そうに書きましたが…なかなか良い方法が見つか
-
-
【SQL Server 2012】Management Studioで誰がデータベースに接続しているか調べる。
SQL Server 2012でリアルタイムで接続しているユーザーを確認するには Manageme
-
-
【SQL Server】エクセルをテーブルに取り込む方法
以前にManagement Studioを使ってSQLでエクセルを直接取り込む方法を書きましたが、今
-
-
【SQLServer2012】バックアップ/リストア方法 リストア編
SQL Server 2012のデータベースをManagement Studioを使用して、リストア
-
-
【レプリケーション】SQL Server 2012 Expressでレプリケーション
Windows Server 2012のSQL Server 2012 Expressを二台用意して
-
-
【SQL Server】Excel VBAのレコードセットを使ってテーブルの一括更新
前々回は読み取り専用でレコードセットへ取得し、結果をエクセルへ書き出し 前回はVBAから更新S
-
-
【SQL Server 2012】テーブル、カラム、主キー、NULL制約、データ型、長さ、INDEXの有無の一括表示
職場のシステムリプレースに伴い、データベースのテーブル(カラム)の一覧が必要になりました。 普
-
-
【Management Studio】Microsoft SQL Server 2012 ExpressにManagement Studio のインストール方法。
前回、Windows Server 2012にSQL Server 2012 Expressをインス
-
-
【Management Studio】テーブル単位のメモリ使用量の確認
1.Management Studioを起動し、メモリ使用量が確認したい対象サーバーへ接続 2.確