You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何快速批量删除SharePoint Online列表中5万+条旧数据?

SharePoint Online列表批量快速删除方案

一、SharePoint原生快速删除功能

  • 视图多选删除:在列表视图中,勾选顶部全选框(默认仅选当前页)后点击「删除」。如果数据量超过分页上限,先进入视图编辑,把「每页显示项目数」调至最大(支持5000条),这样一次可删除更多项。
  • 清空列表功能:进入列表设置,找到「权限和管理」下的「清空列表」选项,点击后直接删除所有列表项,这个操作是原生批量处理,速度远优于逐条删除。注意:操作不可逆,需确认数据无需保留;部分租户可能因权限限制隐藏该选项,需检查账号权限。

二、Power Automate优化方案

如果之前的HTTP批量请求效果不佳,试试以下改进方式:

  • REST API批量删除请求:使用「Send an HTTP request to SharePoint」动作,调用/_api/$batch接口一次性发送多个删除请求,每个批量包最多包含100个请求。示例请求体:
    {
      "requests": [
        {
          "url": "/_api/web/lists/getbytitle('你的列表名')/items(1)",
          "method": "DELETE",
          "headers": { "IF-MATCH": "*" }
        },
        {
          "url": "/_api/web/lists/getbytitle('你的列表名')/items(2)",
          "method": "DELETE",
          "headers": { "IF-MATCH": "*" }
        }
      ]
    }
    
    先分页获取所有列表项ID,分批次生成批量请求包,同时开启PA流的并行分支处理不同批次,大幅提升删除速度。
  • 使用社区优化模板:PA社区有现成的批量删除模板,基于REST API批量操作构建,比默认的「删除项」动作效率高很多。

三、PowerShell备选方案(降低操作门槛)

如果上述方案都无法满足需求,可使用PnP PowerShell脚本,可封装成简单执行文件供终端用户操作:

  1. 提前安装PnP模块(仅需一次):Install-Module -Name PnP.PowerShell -Force
  2. 编写脚本并保存为DeleteListItems.ps1:
    $siteUrl = "你的站点URL"
    $listName = "你的列表名"
    
    # 连接站点(首次运行会弹出登录窗口)
    Connect-PnPOnline -Url $siteUrl -Interactive
    
    # 分页批量删除,避免内存溢出
    do {
        $items = Get-PnPListItem -List $listName -PageSize 500
        if ($items.Count -gt 0) {
            $items | Remove-PnPListItem -Force
            Write-Host "已删除500条数据"
        }
    } while ($items.Count -gt 0)
    
    Write-Host "所有数据删除完成"
    
  3. 为了让终端用户方便操作,可创建一个bat文件,内容为:powershell.exe -ExecutionPolicy Bypass -File DeleteListItems.ps1,用户双击bat文件即可执行,无需手动输入命令。

注意事项

  • 确保操作账号拥有列表的「编辑」或更高权限;
  • 选择低峰时段执行删除,避免SharePoint节流影响速度;
  • 先在测试列表验证方案,再应用到正式环境。

内容的提问来源于stack exchange,提问作者Dnyanesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 15:50:30