gpt4 book ai didi

sql-server - 显式删除临时表或让 SQL Server 处理它

转载 作者:行者123 更新时间:2023-12-01 18:10:12 25 4
gpt4 key购买 nike

处理临时表删除的最佳实践是什么。我读过您应该显式处理删除,并且 sql server 应该处理删除......正确的方法是什么?我一直认为您应该自己清理在存储过程等中创建的临时表。但是,后来我发现了其他建议。

任何见解将不胜感激。我只是担心我没有遵循我创建的临时表的最佳实践。

谢谢

最佳答案

我的观点是,首先看看您是否真的需要临时表 - 或者 - 您可以使用通用表表达式 (CTE)。其次,我总是会删除临时表。有时您需要有一个作用域为连接的临时表(例如##temp),因此如果您第二次运行查询,并且您有显式代码来创建临时表,您将收到一条错误消息,指出该表已经存在。自己清理始终是一个很好的软件实践。

编辑:2021 年 11 月 3 日

另一种选择是 TABLE 变量,一旦查询完成,它将超出范围:

DECLARE @MyTable AS TABLE (
MyID INT,
MyText NVARCHAR(256)
)

INSERT INTO
@MyTable
VALUES
(1, 'One'),
(2, 'Two'),
(3, 'Three')

SELECT
*
FROM
@MyTable

关于sql-server - 显式删除临时表或让 SQL Server 处理它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7348428/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com