AE删除要素

原文:http://blog.sina.com.cn/s/blog_68e6edd7010159dv.html


 ExecuteSQL删除

private void Delete4(IFeatureClass PFeatureclass)

 { 

IDataset pDataset = PFeatureclass as IDataset; 

pDataset.Workspace.ExecuteSQL("delete from " + PFeatureclass.AliasName + " where objectid<=" + DeleteNum); 

}

 三、 结论1、 使用ExecuteSQL删除最快,数据库的效率最高。

2、 DeleteSearchedRows和ExecuteSQL属于批量删除,性能较优。

3、 查询结果中删除,速度最慢,如果你使用这种方法,建立你马上修改你的程序,因为你在浪费时间。

4、 小数据量记录数小于500000条,请使用DeleteSearchedRows或ExecuteSQL,否则使用更新游标删除(方法2),加上进度条,这样界面很友好。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在C#中,您可以使用ArcGIS Engine来实现对图层进行筛选的功能。以下是一个简单的示例代码,演示如何在ArcGIS Engine中对要素进行筛选,并只显示符合条件的要素: ```csharp // 获取要素图层 IFeatureLayer featureLayer = (IFeatureLayer)mapControl1.get_Layer(0); // 创建一个查询过滤器 IQueryFilter queryFilter = new QueryFilterClass(); queryFilter.WhereClause = "POPULATION > 1000000"; // 在此处设置筛选条件 // 获取符合条件的要素集合 IFeatureCursor featureCursor = featureLayer.Search(queryFilter, false); // 清除地图控件上所有的选择集 mapControl1.Map.ClearSelection(); // 遍历符合条件的要素集合,将其添加到地图控件上,并将其选中 IFeature feature = null; while ((feature = featureCursor.NextFeature()) != null) { mapControl1.Map.SelectFeature(featureLayer, feature); } // 刷新地图控件,更新显示 mapControl1.Refresh(esriViewDrawPhase.esriViewGeoSelection, null, null); ``` 在上面的示例中,我们首先获取了要素图层,然后创建了一个查询过滤器,并通过设置WhereClause属性来指定条件。接着,我们使用Search方法获取了符合条件的要素集合,并遍历这个集合,将其中的要素添加到地图控件上并选中。最后,我们刷新地图控件以更新显示。 您可以根据需要修改WhereClause属性来设置不同的筛选条件,以实现您的需求。同时,这里仅提供了一个基本的示例代码,您可以根据自己的需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值