无法使用CI / CD管道在SQL Server中创建临时表

时间:2018-08-17 08:45:28

标签: sql-server azure-devops azure-pipelines-release-pipeline

我想将表数据存储在临时表中,以便在部署之前或之后出现问题时可以将其替换。 为此,我想使用CD管道在Sql Server中创建临时表。 我已经在CD管道中添加了“ WinRM-SQL Server数据库部署”任务,并输入了内联SQL语句以在数据库中创建临时表。

CD管道运行成功,但是没有在数据库中创建临时表。我在sql编辑器中测试了sql查询,并且工作正常。以下是我的sql查询。

USE TempDB
go
create Table #TempJobSatusTable (
jobID varchar(Max),
[name] varchar(Max),
[enabled] bit,
[date_created] datetime,
[date_modified] datetime
);
Insert Into #TempJobSatusTable
SELECT [job_id]      
 ,[name]
 ,[enabled]    
 ,[date_created]
 ,[date_modified]
FROM [msdb].[dbo].[sysjobs_copy]

1 个答案:

答案 0 :(得分:0)

创建临时表并不能使其对所有用户会话可见/可访问。

因此,如果您的CI / CD进程是从一个数据库“会话”创建表,然后尝试从另一个数据库“会话”访问表,则该表可能不可见。

如果该表是部署所必需的,也许应该将其设为永久性,并且每次都将其简单地截断。