pea*_*kit 13 sql sql-server tempdb
我试图理解tempDB以下是我脑海中浮现的疑惑.
tempDB多少?假设一个查询正在做一些Order By并tempDB用于执行该操作.此查询完成后,其他人也执行使用该查询的查询tempDB.第二个查询是否会查找第一个查询所写的记录,tempDB还是会被删除?tempDB?如何知道由于此查询而创建了哪个临时表?是否有任何命名约定后面的Sql引擎命名这些临时表?我是新来的tempDB,请原谅我问这么愚蠢(如果有的话)的问题:-)
如果有人能指出一个可以帮助我了解tempDB的好资源,那将是非常好的.
HLG*_*GEM 18
临时表存储在tempdb中,直到连接被删除(或者在使用它的最后一个连接被删除时,在全局临时表的情况下).您也可以(并且这是一个很好的做法)在使用drop table语句完成后,手动删除表.
不,如果它们是本地临时表,则其他人无法看到您的临时表(他们可以查看和使用全局临时表)多人可以运行使用相同临时表名称的命令,但它们不会在本地临时表中重叠,因此您可以有一个名为#test的表,因此可以有10,000个其他用户,但每个用户都有自己的结构和数据.
您通常不希望在tempdb中查找临时表.可以检查是否存在,但这是我唯一一次直接引用tempdb.只需使用临时表名称即可.检查存在的示例如下
IF OBJECT_ID('TempDB.dbo.#DuplicateAssignments') IS NOT NULL
BEGIN
DROP TABLE #DuplicateAssignments
END
Run Code Online (Sandbox Code Playgroud)
您可以通过在名称前面加上#来命名临时表(对于本地表,您将使用999.9%的时间)和##作为全局临时表,然后是您想要的名称的其余部分.
| 归档时间: |
|
| 查看次数: |
47034 次 |
| 最近记录: |