Einfügen von Features mit SQL
Beschreibung
Fügt Features in eine Tabelle ein, indem über eine MI SQL Insert-Befehlszeichenfolge eine Abfrage an eine Tabelle durchgeführt wird. Ausführliche Informationen zu MapInfo SQL-Funktionen finden Sie in der MapInfo SQL Language-Referenz.
Die JSON-Textkörperdarstellung der Geometrien ist im GeoJSON-Format. Weitere Informationen über GeoJSON finden Sie unter geojson.org/geojson-spec.html.
ACL-Autorisierungsfluss
Um Features in eine benannte Tabelle einzufügen, indem eine Abfrage für eine Tabelle mit einer MI SQL-Insert-Befehlszeichenfolge ausgeführt wird, benötigt der Benutzer (oder alle Rollen, zu denen er gehört) wie folgt Ausführungs- und Erstellungsberechtigungen für die benannte Tabelle:
- „EXECUTE“ für den Entitätstyp „Location Intelligence.Named Resources“ für den Benutzer
- bzw. „CREATE“ für den Entitätstyp „Location Intelligence.Dataset.DML“
URL-Format von HTTP-POST-Anforderungen
Für HTTP-POST-Anforderungen wird das folgende Format verwendet:
HTTP POST: /FeatureService/tables/features.rep?
POST Data: [insert=MI SQL query]
POST BODY: Content-Type:application/json {bound parameters}
{gebundene Parameter} ist ein POST-JSON-Textkörper (Content-Type: application/json) für die MI SQL-Einfügeabfrage, der mindestens einen einzuschließenden Parameter enthält. Nullwerte werden unterstützt; es ist jedoch weiterhin ein Typ erforderlich.
Weitere Informationen zu den unten aufgeführten Parametertypen finden Sie unter URL-Anforderungsdatentypen.
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
rep | Zeichenfolge | ja | Die zurückzugebende Darstellung. Die unterstützte Darstellung ist JSON. |
insert = MI SQL-Abfrage | Zeichenfolge | ja | Die durchzuführende Einfügeabfrage, im MI SQL-Format. |
Gibt zurück:
Gibt die Anzahl der erfolgreich eingefügten Features in einer benannten Tabelle in der Datenbank zurück. Bei Native und NativeX TAB-Dateien wird stattdessen eine SuccessfulInserts
-Antwort zurückgegeben, die die Anzahl der erfolgreich eingefügten Zeilen anzeigt.
Beispiele
Fügt Features aus „MyTable“ mithilfe eines gebundenen Parameters ein:
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"
}
}
}
}]
}