【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
関連記事
-
【Management Studio】データベースの定義を取得する方法
あくまでデータベース定義の取得です。 ※データベースのデータを取得する方法ではありません。
-
【SQL Server】varchar型、nvarchar型の文字数とバイト(byte)数を取得する
varchar型の文字数、バイト(byte)数を取得する方法 SELECT LEN(【文字
-
【SQL Server】Excel VBAでSQLを実行し、レコードを更新(追加、更新、削除)する
VBAでSQL Serverのテーブルに SQL(Insert、Update、Delete)を発行
-
【SQL Server 2012】テーブル、カラム、主キー、NULL制約、データ型、長さ、INDEXの有無の一括表示
職場のシステムリプレースに伴い、データベースのテーブル(カラム)の一覧が必要になりました。 普
-
【SQLServer2012】バックアップ/リストア方法 リストア編
SQL Server 2012のデータベースをManagement Studioを使用して、リストア
-
【SQL Server 2012】バックアップ/リストア方法 バックアップ編
Management StudioでSQL Server 2012のデータベースバックアップファイル
-
【SQL Server】Excel VBAでSELECT文を実行してレコードセットへ取得
前回は、テーブルのレコードをVBAで直接更新(Insert/update/delete) 今回
-
【ODBC】Windows7でAccess2007とSQL Serverを接続する為のODBCの作成
前回、ODBC接続の為のサーバー側の設定を行いましたので、 今回はAccess2007側のWind
-
【ODBC】Access2007でSQL Server 2012に接続する為のサーバー側の設定
ODBCでAccess2007からSQL Server 2012へ接続する為には SQL Serv
-
【SQL Server 2012 Express】Windows Server 2012にインストールしてみる
Windows Server 2012にSQL Server 2012をインストールしてみる。 以