SQL を用いたフィーチャの挿入

説明

MI SQL Insert コマンド文字列を使ってテーブルに対してクエリを実行することによって、テーブルにフィーチャを挿入します。MapInfo SQL 関数の使用方法の詳細については、『MapInfo SQL Language Reference Guide』を参照してください。

ジオメトリの本体の JSON 表現は GeoJSON 形式です。GeoJSON の詳細については、geojson.org/geojson-spec.html を参照してください。

注: 書き込み可能テーブルに対して挿入、更新、および削除の操作を実行するには、名前付きテーブルに対する表示権限、および名前付きテーブルの関連するデータセットに対する作成/変更/削除権限が必要です。詳細については、「管理」セクションの ユーザと役割を参照してください。
注: 挿入は、PostGIS、Oracle、SQL Server、SAP HANA、GeoPackage、および汎用 JDBC の各テーブルでサポートされます。Windows システムに限り、MapInfo ネイティブ TAB およびネイティブ拡張 TAB (NativeX) ファイルでもサポートされます。複合プライマリ キーを持つ名前付きテーブルは、書き込み可能ではありません。

HTTP POST URL 形式

HTTP POST リクエストには次の形式を使用します。


HTTP POST:  /FeatureService/tables/features.rep?
POST Data: [insert=MI SQL query]
POST BODY: Content-Type:application/json {bound parameters}
			

{bound parameters} は、含められる 1 つ以上のパラメータを含む MI SQL 挿入クエリの POST json 本体 (Content-Type: application/json) です。Null 値がサポートされていますが、その場合もタイプは必須です。

注: POST では json はオプションです。SQL クエリでバウンド パラメータを使用する場合にのみ必要です。

以下のパラメータのタイプについては、リクエスト URL のデータ タイプを参照してください。

パラメータ Type 必須 説明
rep 文字列 はい 戻り値の表現。サポートされている表現は json です。
insert=MI SQL query 文字列 はい 実行する挿入クエリ (MI SQL 形式)。

戻り値

正常に挿入されたフィーチャの数をリポジトリ内の名前付きテーブルに返します。ネイティブおよび NativeX TAB ファイルでは、正常に挿入された行の数を示す SuccessfulInserts 応答が代わりに返されます。

バウンド パラメータを使って MyTable にフィーチャを挿入します:


http://<hostname>:<port>/rest/Spatial/FeatureService/tables/features.json?
insert= INSERT INTO “/WORLDTABLE”(MI_PRINX, COUNTRY, CAPITAL, CONTINENT, OBJ) 
VALUES (257,'Bahrain', 'Manama', 'Asia', @geomParam) 
{
     "parameters": [{
           "name": "geomParam",
           "value": {
                 "type": "Point",
                 "coordinates": [-72, 42],
                 "crs": {
                       "type": "name",
                       "properties": {
                             "name": "epsg:4269"
                       }
                 }
           }
     }]
}