SQLserver 一括登録 csvのインポート方法 – ざったなぶろぐ
より分かりやすく!格安スマホのギアベストクーポン紹介ページリニューアル!!(毎日更新です!!)
XBRL文書の解析に成功しました!!

データ収集に成功しました!これはうれしい!!

ゆうほうを見る!!

SQLserver 一括登録 csvのインポート方法

この記事は約 4 分で読めます。

データの取得

ダウンロード

今回は、SQLserverに対してデータの一括取得登録を行ってみたいと思います。データの一括登録ですが、インターネット上に中々良い素材が転がっています。

今回は以下の二つのデータを取得して登録する操作を行ってみたいと思います。

  • 郵便局が公開する住所データ
  • 国税局が公開する企業データ

どちらのデータもお試しで登録するにはちょうど良いのでそれぞれ試してみたいと思います。

郵便局

まずは、郵便局のデータから

Googleで[郵便局 ダウンロード csv]で検索してください。

この様な形で直ぐに見つかります。

リンク先を辿るとダウンロードできるページにつながりますので

今回は赤枠の2データをダウンロードしてみます。

※ローマ字のデータは後で何かに利用できそうだったら使ってみる程度で

ダウンロードするデータは全国一括版をお願いします。

圧縮した状態では小さい物ですね。

圧縮された状態から解凍しCSVの状態にしておきます。

 

次に国税庁のデータをダウンロードしてみたいと思います。

国税庁

Googleで[国税庁 ダウンロード csv 企業データ]で検索してください。

上側のデータでも良いのですが、下側のリンクから辿った方が早いです。

此方の情報は県別に分かれています。折角なので東京のデータをダウンロードしてみましょう。

 

圧縮状態で31MB なかなか熱いですね

解凍して郵便局のデータと一緒に置いてみました。

解凍してみたら164MBありました。

テスト登録してみるとしたら中々良いサンプルデータになりそうですね。

 

 

 

一括登録

一括登録する前にテーブル作ります。

CSV形式のデータを取り込む場合、WindowsのOSはそのデータをただのテキストデータとしか見ません。

そのため、 2005/12/17 と日付のデータがあったとしても、それを日付の形式ではなく、‘2’,’0′,’0′,’5′,’/’,’1′,’2′,’/’,’1′,’7′ と、連続した文字のデータがそこにあるだけとしか見てくれません。これらのデータは折角なので日付形式で取り込みたいものです。

※日付形式で取り込んでない場合、そのデータは文字列扱いなので日付の差分などを求めることができなくなります。

今回は、データの取り込みを行う前に、事前にテーブルを作成して意図した形式でデータを取り込むようにします。

住所データ用テーブル作成

以下のクエリをそのままコピペして貼り付けてテーブルを作成してください。

国税庁データ用テーブル作成

以下のクエリをそのままコピペして貼り付けてテーブルを作成してください。

上記でそれぞれ登録用のテーブルができました。

 

それでは次の項目でそれぞれデータを登録してみましょう。

バルクインサート

私は以下の単語を大昔から知っていました。

バルク品
当時は何か、不良品とか質が低い物とかそんな意味なのかなと思っていたのですが、先生に聞いてい見ると、「大量」って意味みたいですね。なのでバルクインサートは大量投入という意味になるみたいです。
それでは早速、コードを貼ってみましょう。
データが以下のように配置されている前提です。


 

こんな感じでメッセージが表示されれば成功です。

 正しくデータが登録されているか見てみましょう。
登録したテーブルを右クリックメニューの 上位1000行の選択 から選択

以下のように表示されていれば成功していることになります。

 

旨く行きましたか?

bcp

フォーマットファイルの作成

bcpユーティリティーを使ってデータを取り込む際に、取り込むデータのデータ型を指定します。そのフォーマットファイルは既存のテーブルからリバースして作成する事ができます。因みにbcpユーティリティーはSQLのコンソールではなくDOSの画面から実行します。

以下のコマンドでフォーマットファイルを作成してください。

特に何も画面にはでてくれませんが、指定した出力先にできています。

以下、メモ帳で開いた結果です。

ソースコードとしても掲載しておきます。

 

それでは生成したフォーマットファイルを利用してデータの登録を実施してみましょう

実行するとパスワードを聞かれた後、以下のように画面で表示されて登録処理が動きます。

登録処理ですが一瞬で終わります。

データベースに丁度良いサンプルデータが登録できましたので、

次回以降はこれらのデータを使って色々やってみたいと思います。

 

 

 

関連記事(一部広告含む)
スポンサーリンク
9.SQLその他
kazuyoumeをフォローする
ざったなぶろぐ