当前位置: 首页 > 面试题库 >

删除实例的所有临时表

羊昊苍
2023-03-14
问题内容

我想知道如何/是否有可能删除所有临时表的查询?

我一直在尝试使用tempdb.sys.tables解决问题,但是正在努力格式化name列使其可以被删除-
另一个使事情变得棘手的因素是,temp表名称通常包含’_’意味着进行替换变得更麻烦了(至少对我而言!)

有什么我可以使用的方法,可以删除所有临时表(本地或全局),而不必分别删除所有临时表?

谢谢!


问题答案:

临时表的要点是它们是..临时的。一旦超出范围

  • 在会话中创建的#temp:会话断开连接
  • temp:创建它的会话断开连接

查询消失。如果发现需要手动删除临时表,则需要重新使用它们。

对于全局变量,这将生成并执行语句以将其全部删除。

declare @sql nvarchar(max)
select @sql = isnull(@sql+';', '') + 'drop table ' + quotename(name)
from tempdb..sysobjects
where name like '##%'
exec (@sql)

但是,删除其他会话的[global]临时表是一个坏主意。

对于本地( 到此会话 )临时表,只需断开连接并再次重新连接。



 类似资料:
  • 本文向大家介绍javascript  删除select中的所有option的实例,包括了javascript  删除select中的所有option的实例的使用技巧和注意事项,需要的朋友参考一下 javascript  删除select中的所有option的实例 方法一: 方法二:(那右边的Select中的所有option移到左边的Select)   以上两个方法都不够好!因为它们一次性都册除不了

  • 问题内容: 我已经看到了许多变化,但是没有什么与我要完成的工作完全匹配。 我有一张表格,其中包含用户对可配置问卷的回答。列为。 不知何故,一些成员两次提交了答案。因此,我需要删除重复的记录,但要确保保留一排。 没有 主 列,因此可能有两行或三行的数据完全相同。 是否有查询以删除所有重复项? 问题答案: 在表上添加 唯一索引 : 另一种方法是: 在表中添加主键,然后可以使用以下查询轻松地从表中删除重

  • 问题内容: 朋友们, 我正在创建一个临时表。该脚本可能会运行几次,因此我需要检查临时表是否存在,然后将其删除。我已经在下面编写了代码,但是两次运行脚本时出现错误,表明该表已经存在: 数据库中已经有一个名为“#lu_sensor_name_19”的对象 。 当Tablle不为null时,似乎不会返回true。我究竟做错了什么? 问题答案: Temp #Tables是在tempdb中创建的。试试这个:

  • 我有两个实体,用户和电影。他们是很多双向的关系。我的问题是,当我通过我的控制器删除一部电影时,它也会删除所有与该电影相关的实体。My user和this user角色和movie实体。我要做什么,从表中删除电影实体,并保持用户与他的角色,而不是删除他们所有。

  • 我正在尝试从我的GAE应用程序中的数据存储中删除某个类型的所有实体。我有以下一行: 我看到以下例外情况: 我假设我没有正确地进行别名操作,因为它误将DELETE当作一个实际的类。我尝试在没有别名的情况下只执行操作,但似乎不起作用。

  • 主要内容:所需步骤,示例代码在本教程将演示如何在JDBC应用程序中删除一个数据库表。 在执行以下示例之前,请确保您已经准备好以下操作: 具有数据库管理员权限,以在给定模式中删除数据库表。 要执行以下示例,需要用实际用户名和密码替换这里用户名()和密码()。 MySQL或数据库已启动并运行。 注意:这是一个严肃的操作,必须在继续删除表之前作出明确的决定,因为删除表后,表中的所有内容都将丢失。 所需步骤 使用JDBC应用程序删除