如何从列表中删除所有项目?

时间:2014-07-23 17:36:41

标签: sharepoint

如何从Sharepoint列表中删除所有项目?

我必须删除我的列表并再次创建它...任何人都可以帮我解决这个问题吗?

10 个答案:

答案 0 :(得分:18)

如果您的列表包含超过500个项目,并且您不想选择编码路径,并且不想删除列表,那么您可以转到“管理内容和结构”视图,它允许您一次查看1000个项目,然后选择全部删除所有项目。

答案 1 :(得分:3)

您可以在数据表视图中一次删除所有项目(Ctrl + A>右键单击行>删除行)。

答案 2 :(得分:2)

在您的SharePoint网站中,您可以转到列表,然后单击列表中第一项旁边的复选框(它应突出显示所有项目),然后单击"项目"在列表工具功能区中,您将看到一个删除按钮。

如果您没有看到复选框,请点击"列表"在Tools功能区中,然后转到修改视图。滚动到设置的底部,您将看到"表格视图"并启用复选框。

那应该有所帮助。 :)

答案 3 :(得分:2)

您可以将Microsoft Access连接到SharePoint并运行SQL命令以删除所有记录或使用WHERE条件。更多信息请访问:http://office.microsoft.com/en-ca/access-help/import-from-or-link-data-to-a-sharepoint-list-HA102749600.aspx

答案 4 :(得分:1)

您只需选择项目并删除键即可删除多个项目。

列表==>查看格式==>快速编辑

答案 5 :(得分:1)

转到“站点设置”,然后单击“内容和结构”,然后在右上角打开列表后选择显示项目中的1000个,现在您可以轻松地一次删除1000个项目。由于SharePoint不允许从直接列表视图中删除100多个。

站点设置=>内容和结构=>选择列表=>选择显示1000 =>删除

答案 6 :(得分:1)

@Lukas Nespor的工作原理,您只需安装并导入正确的模块即可。

代码如下:

throw new functions.https.HttpsError('email exists', error);

答案 7 :(得分:1)

仅对于SharePoint Online,您可以使用Microsoft Graph并发送对列表中每个项目的请求,逐个删除每个项目(但在foreach循环中很快)。

  1. 从列表中获取项目(方法= GET):

/ sites / {id} / lists / {id} / items

  1. 浏览每个项目并删除它们(方法= DELETE):

/ sites / {id} / lists / {id} / items / {id}

从今天开始,我成功地做到了!将我的PowerShell模块用于MS Graph函数,https://www.powershellgallery.com/packages/MSGraphAppOnlyEssentials

我使用New-MSGraphAccessToken获取访问令牌,然后使用New-MSGraphQuery(在模块的未来版本中将其重命名为“ New-MSGraphRequest”)。您需要首先在Azure AD中设置一个应用程序注册,并确保它具有Microsoft Graph API for Sites.ReadWrite.All的API权限。然后,您需要生成一个自签名证书,并将其存储在CurrentUser / My中,并将证书(无需私钥)导出/上传/导入到Azure AD的应用程序注册中。

https://docs.microsoft.com/en-us/graph/api/resources/listitem?view=graph-rest-1.0 https://docs.microsoft.com/en-us/graph/api/listitem-delete?view=graph-rest-1.0&tabs=http

我也将对节流限制感到厌倦,并考虑在您的foreach循环中放入“开始睡眠”以避免被节流。

答案 8 :(得分:1)

除了之前的建议,如果您有权访问 Power Automate,您可以创建一个流来删除列表中的所有项目。

您的流程将如下所示: MS Flow: Delete all items of a SP list

  1. 有一个手动触发
  2. 获取 SP 列表中的所有项目
  3. 将变量 COUNT_OF_LIST 设置为 length(outputs('Get_items_Items_of_list')?['body/value']) => 列表中的项目数
  4. 执行直到 COUNT_OF_LIST 等于 0 enter image description here
  5. 获取您要从列表中删除的所有项目
  6. 应用到这些项目中的每一个,并使用“删除项目”操作将其删除
  7. 再次获取列表中的所有项目
  8. 将 COUNT_OF_LIST 设置为 length(outputs('Get_items_Inner')?['body/value']) => 剩余物品的数量

由于正常的“获取项目”操作只会为您提供 100 个项目,因此您需要将高级选项中的“最高计数”设置为 4999 (https://alextofan.com/2019/08/22/how-to-get-more-than-5000-item-from-sharepoint-online-in-flow/#:~:text=5000%20items%20limit&text=The%20maximum%20top%20count%20you,than%20100%20items%20are%20retrieved.)

这个流程可以优化,因为它有很多 Get Items 操作。但就目前而言,这应该可以解决问题。

答案 9 :(得分:-1)

如果列表包含很多元素,一个选项是将列表导出为模板,删除原始列表,然后从模板重新创建。 (或更笼统地说,删除并重新创建,但是有了模板,后面的步骤就不那么痛苦了。)