医療圏のポリゴンデータをアップロードした際には日本語データが文字化けしており,原因も対処法も不明だった.
今回は行政区域データをダウロードし,SQL Server にアップロードしてみたところ,日本語が文字化けしなかったので報告する.
目次
国土数値情報の行政区域データをダウンロードする
場所はこちらになる.
メタデータ
属性名 | shp属性名 | 説明 | 属性の型 |
---|---|---|---|
範囲 | 行政区として定義された領域 | 曲面型 | |
都道府県名 | N03_001 | 当該区域を含む都道府県名称 | 文字列型 |
支庁・振興局名 | N03_002 | 当該都道府県が「北海道」の場合、該当する支庁・振興局の名称 | 文字列型 |
郡・政令都市名 | N03_003 | 当該行政区の郡又は政令市の名称 | 文字列型 |
市区町村名 | N03_004 | 当該行政区の市区町村の名称 | 文字列型 |
行政区域コード | N03_007 | 都道府県コードと市区町村コードからなる、行政区を特定するためのコード | コードリスト |
ダウンロード
ダウンロードしたい行政区域データ,ここでは全国を選択する.

ページ最下段に令和2年があるのでダウンロードボタンをクリックする.

ファイルサイズの警告が出る.OKをクリックするとダウンロードが開始される.

zip ファイルの展開
ダウンロードフォルダにある zip ファイルを展開する.

展開されたファイル群に .dbf, .prj, .shp, .shx の拡張子をもつファイルがあることを確認する.

Shape2SQL で SQL Server にアップロードする
今回は Geometry properties を Geography (Spheric)で指定してみる.

特に問題なくアップロードできる.

結果の確認
クエリ
下記クエリを実行して結果を確認する.ジオメトリを nvarchar(max) 型に変換すると,ポリゴンの座標が表示できるようだ.
1 2 3 4 5 6 7 8 9 10 |
SELECT [ID] ,[N03_001] ,[N03_002] ,[N03_003] ,[N03_004] ,[N03_007] ,[geog] ,CAST([geog] AS nvarchar(max)) AS polygon FROM [MEDICAL_AREADB].[dbo].[N03-20_200101geog] WHERE dbo.[N03-20_200101geog].N03_001 = '東京都' |
結果は以下の通りである.Management Studio の警告として,「表示する空間オブジェクトが多すぎるため,最初の 5000 個のオブジェクトが表示されています.クエリを修正してください」と表示される.具体的なアプリケーションは GIS に特化したものが必要になるのだろう.
日本語が文字化けせず表示される
前回と違って重要な点は,日本語が文字化けしていないことである.
1 |
(6173 行処理されました) |

ストレージのデータ領域
Geometry 型で作成したテーブルのデータ領域は 251.297 MB を占めており,Geography 型だと 253.602 MB とほぼ同等だった.
まとめ
国土交通省の国土数値情報の行政区域データをダウンロードし,SQL Server にアップロードした.
データ型は「曲面型」となっており,Geography 型かと思われたが,テーブルサイズは Geometry 型でも Geography 型でも変わらなかった.
日本語が文字化けせず表示され,各種空間データとの結合が容易になると思われた.
“SQL Server 2008 R2 に国土数値情報の行政区域データをアップロードする” への2件の返信