SQLite データベースでの空間対応

既存の SQLite データベースを空間対応にするには、次のいずれかを実行します。

ST_Geometry テーブルの SQLite への追加

ST_Geometry システム テーブルを既存の SQLite データベースに追加するには、次の手順に従います。

  • データベース ファイルの拡張子は、.sqlite にする必要があるため、使用するデータベースに他の拡張子が付いている場合は、拡張子を変更する必要があります。たとえば、データベースの名前が projdata.d1 である場合、projdata.sqlite に変更してからデータベースを ST_Geometry タイプに追加する必要があります。
  • データベース内に、すでに別の空間タイプが存在していてはなりません。
  • Esri ST_Geometry ライブラリは、これを読み込む SQL エディターからアクセスできる必要があります。ライブラリは、My Esri から取得したり、ArcGIS Desktop または ArcGIS Server のインストール場所の DatabaseSupport ディレクトリから取得することができます。
  1. 必要に応じて、データベースの拡張子を .sqlite に変更します。
  2. sqlite3.exe などの SQL エディターを使用してデータベースに接続します。
  3. ST_Geometry ライブラリを読み込みます。

    この例では、ST_Geometry ライブラリを SQLite コンピューター上の Microsoft Windows データベースに読み込みます。

    SELECT load_extension('stgeometry_sqlite.dll','SDE_SQL_funcs_init');

    この例では、ST_Geometry ライブラリを SQLite コンピューター上の Linux データベースに読み込みます。

    SELECT load_extension('libstgeometry_sqlite.so','SDE_SQL_funcs_init');

  4. CreateOGCTables 関数を呼び出して、ST_Geometry テーブルをデータベースに追加します。

    SELECT CreateOGCTables();

GeoPackage の作成

既存の SQLite データベースを GeoPackage に変換するには、以下の手順に従う必要があります。

  • データベース ファイルの拡張子は、.gpkg にする必要があるため、使用するデータベースに他の拡張子が付いている場合は、拡張子を変更する必要があります。たとえば、データベースの名前が study.db である場合、study.gpkg に変更してから GeoPackage に変換する必要があります。
  • データベース内に、すでに別の空間タイプが存在していてはなりません。
  1. 必要に応じて、データベースの拡張子を .gpkg に変更します。
  2. sqlite3.exe などの SQL エディターを使用してデータベースに接続します。
  3. ST_Geometry ライブラリを読み込みます。

    この例では、ST_Geometry ライブラリを SQLite コンピューター上の Windows データベースに読み込みます。

    SELECT load_extension('stgeometry_sqlite.dll','SDE_SQL_funcs_init');

    この例では、ST_Geometry ライブラリを SQLite コンピューター上の Linux データベースに読み込みます。

    SELECT load_extension('libstgeometry_sqlite.so','SDE_SQL_funcs_init');

  4. CreateGpkgTables 関数を呼び出して、GeoPackage テーブルをデータベースに追加します。

    SELECT CreateGpkgTables();