我使用SQL数据库(PaaS)产品在Azure上有一个数据库。
我无法查看或访问 tempdb ,也无法创建它。
如果我尝试创建数据库,则会收到以下错误:
Msg 1801, Level 16, State 3, Line 10
Database 'tempdb' already exists. Choose a different database name.
有谁知道这里发生了什么?
答案 0 :(得分:4)
Azure SQL数据库上的TempDB由Azure平台创建和管理,TempDB容量的大小限制基于Azure SQL数据库层。
希望这有帮助。
答案 1 :(得分:1)
由于他对处理这个系统数据库的服务是正确的,所以我要打开Alberto。
我想我的主要问题是你为什么使用[tempdb]?
在推送到云之前,懒惰的SQL开发人员会在[tempdb]中创建表。这些表应该放在用户定义的登台数据库或模式中。
让我们看看是否允许[tempdb]中的本地/全局临时表和用户定义的表。
-- local temp table
select 'Fee Fie Foo Fumb' as rhymes into #a
go
-- show the data
select * from #a
go
-- show my local tables
select * from tempdb.sys.tables
go
预期结果如下所示。支持本地和全局临时表。
如果我们在Azure SQL数据库中尝试以下create语句,该服务足够聪明,知道您无法直接使用[tempdb]。
现在,回到我的第一个问题。
您为什么要尝试使用和/或修改[tempdb] ??
答案 2 :(得分:0)