通过数据服务对要素进行增删改查,能够进行增和改,但通过IDs或SQL条件删除要素不成功,代码有问题,麻烦帮忙看看。数据是存在postgresql空间数据库里的。
删除代码如下
//IDS删除要素
function deletelineids() {
var commit = getcommit();
var uri = "http://localhost:8090/iserver/services/data-editer-2/rest/data/datasources/name/localhost:5432_AAA/datasets/name/myline/features.rjson";
//欲增加的要素信息。线或面。
//其中的 ID、SMID、geometry.id 一致,传入的值无效。SMLIBTILEID 的值是固定的,传入的值也无效。
var NewFeature = {
"IDs":[4]
}
//欲增加的要素信息集合(包含1个要素)
var entity = [NewFeature];
commit.open("POST", encodeURI(uri) + "?_method=DELETE&deleteMode=IDS", false, "", "");
commit.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
commit.send(toJSON(entity));
//解析从服务器端返回的 json 字符串,解析为一个 JavaScript 对象。
var response = json_parse(commit.responseText, null);
console.log(commit.responseText);
//提示结果
if (!response.succeed) {
alert("删除失败!" )
} else {
alert("删除成功!")
}
}
//SQL条件删除要素
function deletelinesql() {
var commit = getcommit();
var uri = "http://localhost:8090/iserver/services/data-editer-2/rest/data/datasources/name/localhost:5432_AAA/datasets/name/myline/features.rjson";
//欲增加的要素信息。线或面。
//其中的 ID、SMID、geometry.id 一致,传入的值无效。SMLIBTILEID 的值是固定的,传入的值也无效。
var NewFeature = {"attributeFilter":"SmID %26lt; 5"} //SmID<5
//欲增加的要素信息集合(包含1个要素)
var entity = [NewFeature];
commit.open("POST", encodeURI(uri) + "?_method=DELETE &deleteMode=SQL", false, "", "");
commit.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
commit.send(toJSON(entity));
//解析从服务器端返回的 json 字符串,解析为一个 JavaScript 对象。
var response = json_parse(commit.responseText, null);
console.log(response);
//提示结果
if (!response.succeed) {
alert("删除失败")
} else {
alert("删除成功")
}
}