医療機関テーブルに二次医療圏コードを追加する

SQL Server

 医療機関テーブルには二次医療圏コードが存在しない.そのため,ある医療機関がどの二次医療圏に属しているかを調べるには空間データを調べる必要がある.空間データは計算コストが高く,テーブルの結合条件に STWIthin() メソッドを使うのは時間がかかる.そのため,医療機関テーブルに二次医療圏コードを追加しようと考えた.

“医療機関テーブルに二次医療圏コードを追加する” の続きを読む

国土数値情報の令和2年の医療圏データの文字化けが直っていた

SQL Server

 以前の投稿(Shape2SQL でシェープファイルを SQL Server 2008 R2 にアップロードする)で国土数値情報ダウンロードサービスの医療圏データが文字化けしていると記述した.改めてダウンロードして SQL Server にアップロードしたところ,いつの間にか文字化けが直っていた.以前にも河川データの文字化けを指摘したことがあるが,こちらも修正されていた(国土数値情報の河川データが一部直っていた件).どうやら国土交通省に指摘すると修正してくれるらしい.

“国土数値情報の令和2年の医療圏データの文字化けが直っていた” の続きを読む

国土数値情報の医療機関のPointデータをダウンロードしQGIS経由でSQL Serverにアップロードする

SQL Server

 国土数値情報ダウンロードサービスには医療機関や医療圏の位置情報もある.今回は医療機関の Point データをダウンロードし,SQL Server にアップロードする方法を見つけたので備忘録として記載する.

“国土数値情報の医療機関のPointデータをダウンロードしQGIS経由でSQL Serverにアップロードする” の続きを読む

第14章 インデックス作成 (Beginning Spatial with SQL Server 2008)

SQL Server

 効率的なインデックス作成は,迅速かつ効率的に結果を探索するデータベースアプリケーションを作成するために重要である.空間データを蓄積するためにデザインされる geometry 型および geography 型に加えて,SQL Server 2008 はまた空間データを使用するための新しいインデックスの型を含んでおり,それは(驚くべきことでもないが)空間インデックスと呼ばれる.本章では空間インデックスがどのように動作し,空間インデックスを使って空間クエリの速度をどのように改善するか説明する.

付記 SQL Server の汎用クラスター化インデックスおよび非クラスター化インデックスは多くの異なるデータ型のインデックスを作成するのに使われ,そこには int 型,char 型および datetime 型を使って蓄積される値を含んでいる.しかし,空間インデックスはgeometry 型および geography 型の列の上でしか作成されず,これらのデータ型の列にのみ空間インデックスは追加できる.

“第14章 インデックス作成 (Beginning Spatial with SQL Server 2008)” の続きを読む

国土数値情報の洪水浸水想定区域データをSQL Serverにアップロードし郵便番号から検索する

SQL Server

 地球温暖化に伴い,台風の大型化や洪水被害の拡大が懸念されている.今回は国土交通省の公表している洪水浸水想定区域データを SQL Server にアップロードしたのでその経緯を報告する.

 このデータは2022年9月時点で令和3年のものであり,毎年更新されていくものと思われる.関係各位はデータ更新が大変だろうが,頑張っていただきたい.

“国土数値情報の洪水浸水想定区域データをSQL Serverにアップロードし郵便番号から検索する” の続きを読む

第 7 章 ジオコーディング (Beginning Spatial with SQL Server 2008)

SQL Server

 これまで数章にわたって,多くの異なる技術を紹介してきた.その技術により SQL Server 2008 内に空間データを追加できる.geometry 型および geography 型の静的メソッドを WKT, WKB および GML などのジオメトリ表現と共に直接使用する,Virtual Earth ウェブコントロール上にプロットポイントにより空間の特徴を視覚的にマークする,あるいは,様々な他の空間データフォーマットから既に存在する空間データをインポートする.本章では,SQL Server において空間情報のアイテムを定義するのを助けてくれる最後の一つの技術について考察しよう.ジオコーディングである.

注意 本章で議論しているジオコーディングの方法は .NET アセンブリの生成を必要とする.それにより SQLCLR の機能を拡張し,外部ウェブサービスとの連携が可能となる.このアセンブリを生成するのに使われたサンプルコードに従うには,Microsoft Visual Studio を使わなくてはならない.使用可能な Visual Studio には多くのエディションが存在する.本章でのコードは Microsoft Visual Basic 2008 Express Edition でも Microsoft Visual C# 2008 Express Edition でも動作し,どちらも無料で http://www.microsoft.com/express/download/ からダウンロードできる.

“第 7 章 ジオコーディング (Beginning Spatial with SQL Server 2008)” の続きを読む

第12章 空間オブジェクトを修飾する (Begining Spatial with SQL Server 2008)

SQL Server

 本章においては,他の既存のインスタンスの一部を修飾したり,結合したり,選択したりして geography 型や geometry 型のデータの新しいアイテムを生成するのに使われる多くのメソッドを紹介しよう.これらのメソッドは静的メソッドとは異なり,ジオメトリの座標点の表現から新しいデータのアイテムを代わりに生成することを了承いただきたい.

 本章で論ずるメソッドのいくつか,例えば STBuffer(), STConvexHull() および Reduse() は,単一のインスタンス上で動作する.他のメソッド,例えば STIntersection() および STDifference() は一つ以上のジオメトリ上で動作する.SQL Server 2008 におけるすべての空間機能性の場合のように,geometry 型および geography 型は利用可能なメソッドや,同じ方法でそれらを実装する同じセットをもつ必要はない.本章で紹介する各メソッドについて,いつどのようにそれが使われるかを見せよう.

付記 本章で論ずるメソッドは,それが呼び出された元のインスタンスにいかなる変化をも与えない.むしろ,それらはそれらのインスタンスで表現されるジオメトリの修飾により新しいインスタンスを生成する.

“第12章 空間オブジェクトを修飾する (Begining Spatial with SQL Server 2008)” の続きを読む

第 11 章 空間オブジェクトのプロパティを検査する(Begining Spatial with SQL Server 2008)

SQL Server

第 4 部 空間データの解析

 本書のこの部では,geography 型および geometry 型でデータをフィルターし解析できるメソッドを論ずる.それはアプリケーションにおいて空間データの力を開発するのに使うのに必要な主要な機能を提供してくれる.
 そのメソッドは3つのカテゴリに分類される.章ごとに一つ.第11章では個別の空間オブジェクトのプロパティについての情報を解析して返すメソッドを扱う.第12章では既存のオブジェクト間の組み合わせまたは修飾の間の新しいオブジェクトを定義するメソッドをカバーする.第13章ではオブジェクト間の関係をテストするメソッドを紹介する.例えば同一性,近接性,交差などである.

“第 11 章 空間オブジェクトのプロパティを検査する(Begining Spatial with SQL Server 2008)” の続きを読む

第 4 章 空間データオブジェクトを生成する (Beginning Spatial with SQL Server 2008)

SQL Server

第 2 部 空間データを追加する

 本書のこの部では空間データを SQL Server 2008 データベースに追加する様々な方法を説明する.第 4 章では,既知の座標からいかなるアイテムをも生成するのに使われる存在する静的メソッドのそれぞれを紹介する.第 5 章では,外部資源をかぶせてそれらの座標を派生させるのを助けるための技術を解説する.Microsoft の Virtual Earth Map Control を使う.第 6 章では,空間データの蓄積される他の一般的なデータフォーマットについて議論し,これらの蓄積されたデータを SQL Server 2008 にインポートする方法についての例を提供する.最後に,第 7 章で SQL Server を拡張してジオコーディング機能を提供する方法を示す.つまり,.NET 経由で Microsoft MapPoint Web Services にアクセスして自動的に住所から座標を取得することである.

 前章では,静的メソッドの概念について紹介し,geography 型および geometry 型のオブジェクトをインスタンス化する方法について説明した.本章では各データ型で利用できる異なる静的メソッドを検査し,空間データの新しいアイテムを生成するのに使われる方法について比較する.

注記 本章でのほとんどのコードサンプルは,@Point などのローカル変数を宣言し,その結果静的メソッドにより生成されたインスタンスを蓄積する.しかし,INSERT ステートメントを呼び出すことで静的メソッドの結果をテーブルの geometry 型および geography 型の列に挿入することもできる.

“第 4 章 空間データオブジェクトを生成する (Beginning Spatial with SQL Server 2008)” の続きを読む