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"
}
}
}
}]
}