国土数値情報の河川データをダウンロードして SQL Server 2008 R2 にアップロードできなかった話

 行政区域データは Polygon であったが,河川データは Line と Point である.河川端点を表現するのに Point が使われている.

河川データのダウンロード

 河川データはここにある.都道府県ごとにファイルが分かれている.河川は県境など関係なく流れており,重複がどのように処理されているか不明であるが,ダウンロードする.

メタデータ

 ファイルは2種類に分類される.RiverNode という名のついたファイルと Stream という名のついたファイルである.前者は河川端点,後者は流路を示すものと考えられる.

 ダウンロードしたファイルを RiverNode と Stream 別々のフォルダに分けておく.

河川端点のメタデータ

 河川端点とは,河川中心線の「流路」の接続状況を明示的に示す端点の情報「河川」の下位クラスのことである.

属性名 説明 属性の型
位置 河川端点の位置 GM_Point
標高 河川端点が持つ標高値.単位はメートル 実数型

流路のメタデータ

 流路とは,「同一属性を持つ河川の端点(始点)から次の端点(終点)の間」を示す線情報のことである.

属性名 説明 属性の型
形状 河川中心線 GM_Curve
河川コード 個別の河川を一意に特定する10桁の番号 コードリスト
区間種別 河川管理者が管理する区間を示したコード 列挙型
河川名 河川の名称 文字列型
原典資料種別 流路作成・更新のもととなった原典資料 コードリスト
流下方向判定 流路の流下方向が判明しているかどうか 真偽値型
河川始点 同一属性を持つ河川の始点となる端点 地物「河川端点」
河川終点 同一属性を持つ河川の終点となる端点 地物「河川終点」
流路始点 流路の始点となる端点 地物「河川端点」
流路終点 流路の終点となる端点 地物「河川端点」

Shape2SQL で SQL Server 2008 R2 にアップロード

データベースの新規作成

 任意の名のデータベースを新規作成する.ここでは TrafficDB としている.

オブジェクトエクスプローラから「新しいデータベース...」
オブジェクトエクスプローラから「新しいデータベース…」

Shape2SQLでは「列の後で引用符が閉じていません」のエラーでアップロード不可

 データベースの指定,テーブル名の変更を経て Upload to Database をクリックする.

データベースとShapeファイルを指定しテーブル名を変更
データベースとShapeファイルを指定しテーブル名を変更

 しかし,「(列名)の後で引用符が閉じていません」のエラーで停止する.

「列の引用符が閉じていません」のエラーで停止する
「列の後で引用符が閉じていません」のエラーで停止する

 SQL Server 特有のエラーらしく,シングルクォーテーションをエスケープする必要があるらしい.

 列名の日本語が文字化けしており,おそらくそれがこのエラーの原因である.ということは,国土数値情報から河川データを取り込むことはできない.

まとめ

 国土数値情報のダウンロードサービスでは河川データをアップロードできなかった.原因はある程度推測できたが,対処困難だった.文字コード絡みかもしれない.別のソースからデータを入手する必要がありそうである.

“国土数値情報の河川データをダウンロードして SQL Server 2008 R2 にアップロードできなかった話” への4件の返信

コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください