久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

使用 T-SQL 獲取 SSIS 包名稱、作業名稱和描述

Using T-SQL to get the SSIS Package name, job name and description(使用 T-SQL 獲取 SSIS 包名稱、作業名稱和描述)
本文介紹了使用 T-SQL 獲取 SSIS 包名稱、作業名稱和描述的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我正在嘗試從 SQL Server 中獲取以下信息:

I'm trying to get the following information out of SQL Server:

  • 所有 SSIS 作業代理名稱.
  • SSIS 包名稱.
  • [可選但很高興] SSIS 工作代理描述.

我可以使用下表毫無問題地提取所有這 3 條信息:

I'm able to pull all 3 of these pieces of information with no problems using the following tables:

  • msdb.dbo.sysjobs 為我提供了工作名稱和工作描述.
  • msdb.dbo.sysssispackages 為我提供了 SSIS 包名稱.

不幸的是,我無法找到這 2 個表之間的相關性,無法將所有 3 條信息放在一起.

Unfortunately I'm not able to find a correlation between those 2 tables to gets me all 3 pieces of information together.

有什么想法嗎?謝謝!

推薦答案

這似乎是 Microsoft 的一個明顯漏洞 - 如果 PackageId 存儲在 msdb.dbo.sysjobsteps 表,而不必解析來自 Command 列的信息.正如 OP 正確指出的那樣,當包名稱相同時,這可能會出現問題.無論如何,我一直在研究提供以下內容的查詢:

This appears to be a glaring hole by Microsoft - it would be much nicer if the PackageId were stored in the msdb.dbo.sysjobsteps table, instead of having to parse the information from the Command column. As the OP correctly pointed out, this can be problematic when package names are the same. At any rate, I have been working on a query to provide the following:

  1. 職位名稱
  2. 步驟名稱
  3. 包文件夾路徑

-- 獲取作業指向的包的文件夾路徑.這將所有內容結合在一起.

-- Get the folder path of the package that a job points to. This brings it all together.

;WITH CTE1 AS (
    SELECT 
        J.job_id
        ,JobName = J.name
        ,JS.step_id, JS.step_name, JS.command
        ,StartIndex = 
            CASE 
                WHEN JS.command LIKE '/DTS%' OR JS.command LIKE '/SQL%' OR JS.command LIKE '/ISSERVER%' THEN CHARINDEX('\',JS.command, CHARINDEX('\',JS.command) + 1) --'
                WHEN JS.command LIKE '/SERVER%' THEN CHARINDEX('"', JS.Command, CHARINDEX(' ',command, CHARINDEX(' ',command) + 1) + 1) + 1
                ELSE 0
            END
        ,EndIndex = 
            CASE 
                WHEN JS.command LIKE '/DTS%' OR JS.command LIKE '/SQL%'  OR JS.command LIKE '/ISSERVER%' 
                    THEN  CHARINDEX('"',JS.command, CHARINDEX('\',JS.command, CHARINDEX('\',JS.command) + 1)) --'
                        - CHARINDEX('\',JS.command, CHARINDEX('\',JS.command) + 1) - 1 --'
                WHEN JS.command LIKE '/SERVER%' 
                    THEN  CHARINDEX('"',command, CHARINDEX('"', JS.Command, CHARINDEX(' ',command, CHARINDEX(' ',command) + 1) + 1) + 1)
                        - CHARINDEX('"', JS.Command, CHARINDEX(' ',command, CHARINDEX(' ',command) + 1) + 1) - 1
                ELSE 0
            END
    FROM msdb.dbo.sysjobsteps JS
    INNER JOIN msdb.dbo.sysjobs J
        ON JS.job_id = J.job_id
    WHERE JS.subsystem = 'SSIS'
)    
SELECT 
    C1.job_id
    , C1.JobName
    , C1.step_id
    , C1.step_name
    , PackageFolderPath = 
        CASE 
            WHEN C1.command LIKE '/DTS%' OR C1.command LIKE '/ISSERVER%' THEN SUBSTRING(C1.command, C1.StartIndex, C1.EndIndex)
            WHEN C1.command LIKE '/SQL%' THEN '\MSDB' + SUBSTRING(C1.command, C1.StartIndex, C1.EndIndex)
            WHEN C1.command LIKE '/SERVER%' THEN '\MSDB\' + SUBSTRING(C1.command, C1.StartIndex, C1.EndIndex)
            ELSE NULL
        END
    , C1.command
FROM CTE1 C1
ORDER BY C1.job_id, C1.step_id

這篇關于使用 T-SQL 獲取 SSIS 包名稱、作業名稱和描述的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Converting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(將每個子標記轉換為具有多個分隔符的單列-SQL Server (3))
How can I create a view from more than one table?(如何從多個表創建視圖?)
Create calculated value based on calculated value inside previous row(根據前一行內的計算值創建計算值)
How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對?) - IT屋-程序員軟件開發技
Recursive t-sql query(遞歸 t-sql 查詢)
Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(將月份名稱轉換為日期/月份編號(問題和答案的組合))
主站蜘蛛池模板: 亚洲电影免费 | 国产精品久久久久久久久久99 | 久久亚洲精品国产精品紫薇 | 欧美成年网站 | 亚洲欧美中文日韩在线v日本 | 仙人掌旅馆在线观看 | 亚洲第一视频网 | 男人影音| 欧美精品一二三区 | 日韩av在线一区二区三区 | 成人在线视频免费观看 | 亚洲精品久久嫩草网站秘色 | 韩日一区二区 | 淫片一级国产 | 视频在线一区二区 | 色狠狠一区 | 成年人免费网站 | 国产探花在线观看视频 | 久久精品国产一区二区电影 | 一区二区三区精品视频 | 久久1区| 亚洲一区二区精品视频 | 逼逼网 | 成人一区二区三区 | 毛片黄片 | 亚洲va中文字幕 | 欧美一区二区三区日韩 | 欧美无乱码久久久免费午夜一区 | 国产美女一区二区 | 国产精品视频中文字幕 | 亚洲一区在线播放 | 99自拍视频 | 女人毛片a毛片久久人人 | 日日摸日日碰夜夜爽亚洲精品蜜乳 | 亚洲一页 | 最新国产精品 | 国产精品一区二区在线 | 夜夜摸夜夜操 | 国产精品亚洲视频 | 免费看黄色国产 | 国产高清精品网站 |