Aktualisieren von Features nach Primärschlüssel
Beschreibung
Aktualisiert Features in einer Tabelle, indem eine Feature-Sammlung mit einem optionalen Übergabeintervall weitergeleitet wird. Jedes Feature in der Sammlung muss über eine ID (Primärschlüssel) verfügen, die für einen Vergleich des Eingabe-Features mit dem Feature in der Tabelle verwendet wird. Der Textkörper der Anforderung enthält die JSON-Darstellung der Feature-Sammlung, auch wenn bestimmte Elemente nicht angegeben werden müssen. Die Antwort enthält die Anzahl der Features, die erfolgreich aktualisiert wurden.
Die JSON-Textkörperdarstellung ist im GeoJSON-Format. Weitere Informationen über GeoJSON finden Sie unter geojson.org/geojson-spec.html.
ACL-Autorisierungsfluss
Um Features in einer benannten Tabelle zu aktualisieren, indem eine Feature-Sammlung mit einem optionalen Festschreibungsintervall übergeben wird, muss der Benutzer (oder alle Rollen, zu denen er gehört) wie folgt Ausführungs- und Änderungsberechtigungen für die benannte Tabelle haben:
- „EXECUTE“ für den Entitätstyp „Location Intelligence.Named Resources“
- bzw. „MODIFY“ 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: /tables/tablename/features.rep?
POST Data: action=update;[commitInterval=c]
POST BODY: Content-Type:application/json {table update}
table update ist ein POST-JSON-Textkörper (Content-Type: application/json) für das Aktualisieren der Tabelle, der mindestens ein einzufügendes Feature enthält.
Parameter
Weitere Informationen zu den unten aufgeführten Parametertypen finden Sie unter URL-Anforderungsdatentypen.
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
tablename | Zeichenfolge | ja | Der Name der Tabelle, für die Sie Features aktualisieren. Die Tabelle wird durch einen vollständig qualifizierten Namen für die benannte Tabelle angegeben, der auf dem Speicherort der benannten Tabelle in der Datenbank basiert. Der Name der benannten Tabelle wird zwischen dem „/tables“-Teil der URL und dem „/features.rep“-Teil der URL definiert. Zum Aktualisieren von Features in einer benannten Tabelle, die sich unter „/Samples/NamedTables/WorldTable“ in der Datenbank befindet, würde beispielsweise folgende URL verwendet:.../FeatureService/tables/Samples/NamedTables /WorldTable/features.json;... |
rep | Zeichenfolge | ja | Die zurückzugebende Darstellung. Die unterstützte Darstellung ist JSON. |
action=update | Zeichenfolge | ja | Die Aktion zum Aktualisieren der Features in der Tabelle. |
commitInterval=c | Ganze Zahl | no | Die Anzahl der Aktualisierungen, die in einer Transaktion verarbeitet werden. Wenn Sie etwa 50 Features in einer Tabelle aktualisieren und „commitInterval“ auf 20 festgelegt ist, führt dies zu drei Transaktionen (20, 20, 10). Der Standardwert ist 50. Das Übergabeintervall wird bei Native TAB- und NativeX-Dateien ignoriert. |
Gibt zurück:
Gibt den Primärschlüssel der einzelnen aktualisierten Features in die Tabelle zurück.
Beispiel
Aktualisiert zwei Features in „MyTable“, die Punkte in der Geometriespalte enthalten: die Werte 456 und 123 in „Column1“ und die Werte „vier fünf sechs“ und „eins zwei drei“ in „Column2“.
http://www.pbbi.com/rest/Spatial/FeatureService/tables/MyTable/features.json
?action=update&commitInterval=2
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": "1",
"geometry": {
"type": "Point",
"coordinates": [
-73,
41
]
},
"properties": {
"Column1": 456,
"Column2": "four five six"
}
},
{
"type": "Feature",
"id": "2",
"geometry": {
"type": "Point",
"coordinates": [
-72,
42
]
},
"properties": {
"Column1": 123,
"Column2": "one two three"
}
}
]
}