尝试获取正在执行的作业的会话 ID
;with JobDetails as
(
select Job_Id = left(intr1,charindex(':',intr1)-1),
Step = substring(intr1,charindex(':',intr1)+1,charindex(')',intr1)-charindex(':',intr1)-1),
SessionId = spid
from master.dbo.sysprocesses x
cross apply (select replace(x.program_name,'SQLAgent - TSQL JobStep (Job ','')) cs (intr1)
where spid > 50 and x.program_name like 'SQLAgent - TSQL JobStep (Job %'
)
select *
from msdb.dbo.sysjobs j
inner join JobDetails jd on j.job_id = jd.Job_Id
Run Code Online (Sandbox Code Playgroud)
但它会引发以下错误
消息 8169,级别 16,状态 2,第 47 行 从字符串转换为 uniqueidentifier 时转换失败。
我尝试将其转换job_id
为varbinary
但没有产生任何结果
;with JobDetails as
(
select Job_Id = left(intr1,charindex(':',intr1)-1),
Step = substring(intr1,charindex(':',intr1)+1,charindex(')',intr1)-charindex(':',intr1)-1),
SessionId = spid
from master.dbo.sysprocesses x
cross apply (select replace(x.program_name,'SQLAgent - TSQL JobStep (Job ','')) cs (intr1)
where spid > 50 and x.program_name like 'SQLAgent - TSQL JobStep (Job %'
)
select *
from msdb.dbo.sysjobs j
inner join JobDetails jd on cast(j.job_id as varbinary) = jd.Job_Id
Run Code Online (Sandbox Code Playgroud)
job_id
但是当我像cte
这样复制粘贴时
select job_id, name
from msdb..sysjobs
where job_id = 0x128A47A31EAB8F4DA1AD852093D815F5
Run Code Online (Sandbox Code Playgroud)
有用。 知道如何解决此查询
我曾经CONVERT
将 msdb.dbo.sysjob.job_id 转换为BINARY(16)
,然后使用CONVERT
(和style)将其转换为 varchar(max) ,可以将其与 cte 中的结果进行比较。您可以通过查看CONVERTCONVERT
文档来了解有关 CONVERT 和样式的更多信息。这在我的测试中有效。
尝试这个:
;
WITH JobDetails
AS (
SELECT DISTINCT Job_Id = left(intr1, charindex(':', intr1) - 1)
,Step = substring(intr1, charindex(':', intr1) + 1, charindex(')', intr1) - charindex(':', intr1) - 1)
,SessionId = spid
FROM master.dbo.sysprocesses x
CROSS APPLY (
SELECT replace(x.program_name, 'SQLAgent - TSQL JobStep (Job ', '')
) cs(intr1)
WHERE spid > 50
AND x.program_name LIKE 'SQLAgent - TSQL JobStep (Job %'
)
SELECT *
FROM msdb.dbo.sysjobs j
INNER JOIN JobDetails jd ON jd.Job_Id = convert(VARCHAR(max), convert(BINARY (16), j.job_id), 1)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9658 次 |
最近记录: |