استخدم Transact-SQL (T-SQL) لإنشاء وإدارة وظائف قاعدة بيانات مرنة (معاينة)

ينطبق على: قاعدة بيانات Azure SQL

توفر تلك المقالة العديد من أمثلة السيناريوهات لبدء العمل مع Elastic Jobs باستخدام T-SQL.

تستخدم الأمثلة الإجراءات المخزنة وطرق العرض المتوفرة في قاعدة بيانات الوظائف.

يستخدم Transact-SQL (T-SQL) لإنشاء الوظائف وتكوينها وتنفيذها وإدارتها. لا يتم دعم إنشاء عامل Elastic Job في T-SQL، لذا يجب عليك أولاً إنشاء عامل Elastic Job باستخدام المدخل، أو PowerShell.

قم بإنشاء بيانات اعتماد لتنفيذ المهمة

تُستخدم بيانات الاعتماد للاتصال بقواعد البيانات المستهدفة لديك لتنفيذ البرنامج النصي. تحتاج بيانات الاعتماد إلى أذونات مناسبة، على قواعد البيانات المحددة من قِبل المجموعة المستهدفة، لتنفيذ البرنامج النصي بنجاح. عند استخدام خادم SQL منطقي و/أو عضو المجموعة المستهدفة في التجمع، يُقترح بشدة إنشاء بيانات اعتماد لاستخدامها لتحديث بيانات الاعتماد قبل توسيع الخادم و/أو التجمع في وقت تنفيذ المهمة. يتم إنشاء بيانات الاعتماد المحددة النطاق لقاعدة البيانات في قاعدة بيانات عامل الوظيفة. يجب استخدام نفس بيانات الاعتماد من أجل إنشاء تسجيل دخول وإنشاء مستخدم من تسجيل الدخول لمنح أذونات قاعدة بيانات تسجيل الدخول في قواعد البيانات المستهدفة.

--Connect to the new job database specified when creating the Elastic Job agent

-- Create a database master key if one does not already exist, using your own password.  
CREATE MASTER KEY ENCRYPTION BY PASSWORD='<EnterStrongPasswordHere>';  
  
-- Create two database scoped credentials.  
-- The credential to connect to the Azure SQL logical server, to execute jobs
CREATE DATABASE SCOPED CREDENTIAL job_credential WITH IDENTITY = 'job_credential',
    SECRET = '<EnterStrongPasswordHere>';
GO
-- The credential to connect to the Azure SQL logical server, to refresh the database metadata in server
CREATE DATABASE SCOPED CREDENTIAL refresh_credential WITH IDENTITY = 'refresh_credential',
    SECRET = '<EnterStrongPasswordHere>';
GO

إنشاء مجموعة مستهدفة (خوادم)

يوضح المثال التالي كيفية تنفيذ مهمة على جميع قواعد البيانات في الخادم.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

-- Connect to the job database specified when creating the job agent

-- Add a target group containing server(s)
EXEC jobs.sp_add_target_group 'ServerGroup1';

-- Add a server target member
EXEC jobs.sp_add_target_group_member
@target_group_name = 'ServerGroup1',
@target_type = 'SqlServer',
@refresh_credential_name = 'refresh_credential', --credential required to refresh the databases in a server
@server_name = 'server1.database.windows.net';

--View the recently created target group and target group members
SELECT * FROM jobs.target_groups WHERE target_group_name='ServerGroup1';
SELECT * FROM jobs.target_group_members WHERE target_group_name='ServerGroup1';

استبعاد قاعدة بيانات فردية

يوضح المثال التالي كيفية تنفيذ مهمة على جميع قواعد البيانات في الخادم، باستثناء قاعدة البيانات المسماة MappingDB.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

-- Add a target group containing server(s)
EXEC [jobs].sp_add_target_group N'ServerGroup';
GO

-- Add a server target member
EXEC [jobs].sp_add_target_group_member
@target_group_name = N'ServerGroup',
@target_type = N'SqlServer',
@refresh_credential_name = N'refresh_credential', --credential required to refresh the databases in a server
@server_name = N'London.database.windows.net';
GO

-- Add a server target member
EXEC [jobs].sp_add_target_group_member
@target_group_name = N'ServerGroup',
@target_type = N'SqlServer',
@refresh_credential_name = N'refresh_credential', --credential required to refresh the databases in a server
@server_name = 'server2.database.windows.net';
GO

--Exclude a database target member from the server target group
EXEC [jobs].sp_add_target_group_member
@target_group_name = N'ServerGroup',
@membership_type = N'Exclude',
@target_type = N'SqlDatabase',
@server_name = N'server1.database.windows.net',
@database_name = N'MappingDB';
GO

--View the recently created target group and target group members
SELECT * FROM [jobs].target_groups WHERE target_group_name = N'ServerGroup';
SELECT * FROM [jobs].target_group_members WHERE target_group_name = N'ServerGroup';

إنشاء مجموعة مستهدفة (مجمعات)

يوضح المثال التالي كيفية استهداف جميع قواعد البيانات في واحد أو أكثر من التجمعات المرنة.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

-- Add a target group containing pool(s)
EXEC jobs.sp_add_target_group 'PoolGroup';

-- Add an elastic pool(s) target member
EXEC jobs.sp_add_target_group_member
@target_group_name = 'PoolGroup',
@target_type = 'SqlElasticPool',
@refresh_credential_name = 'refresh_credential', --credential required to refresh the databases in a server
@server_name = 'server1.database.windows.net',
@elastic_pool_name = 'ElasticPool-1';

-- View the recently created target group and target group members
SELECT * FROM jobs.target_groups WHERE target_group_name = N'PoolGroup';
SELECT * FROM jobs.target_group_members WHERE target_group_name = N'PoolGroup';

توزيع مخطط جديد للعديد من قواعد البيانات

يوضح المثال التالي كيفية توزيع مخطط جديد على جميع قواعد البيانات.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

--Add job for create table
EXEC jobs.sp_add_job @job_name = 'CreateTableTest', @description = 'Create Table Test';

-- Add job step for create table
EXEC jobs.sp_add_jobstep @job_name = 'CreateTableTest',
@command = N'IF NOT EXISTS (SELECT * FROM sys.tables WHERE object_id = object_id(''Test''))
CREATE TABLE [dbo].[Test]([TestId] [int] NOT NULL);',
@credential_name = 'job_credential',
@target_group_name = 'PoolGroup';

جمع البيانات باستخدام المعلمات المضمنة

في العديد من سيناريوهات جمع البيانات، قد يكون من المفيد تضمين بعض متغيرات البرمجة النصية هذه للمساعدة في معالجة نتائج الوظيفة بعد ذلك.

  • $(job_name)
  • $(job_id)
  • $(job_version)
  • $(step_id)
  • $(step_name)
  • $(job_execution_id)
  • $(job_execution_create_time)
  • $(target_group_name)

على سبيل المثال، لتجميع جميع النتائج من نفس تنفيذ المهمة معاً، استخدم $ (job_execution_id) كما هو موضح في الأمر التالي:

@command= N' SELECT DB_NAME() DatabaseName, $(job_execution_id) AS job_execution_id, * FROM sys.dm_db_resource_stats WHERE end_time > DATEADD(mi, -20, GETDATE());'

مراقبة أداء قاعدة البيانات

ينشئ المثال التالي وظيفة جديدة لتجميع بيانات الأداء من قواعد بيانات متعددة.

بشكل افتراضي، سيقوم عامل الوظيفة بإنشاء جدول الإخراج لتخزين النتائج التي تم إرجاعها. لذلك، يجب أن يكون لمبدأ قاعدة البيانات المرتبط ببيانات اعتماد المخرجات على الأقل الأذونات التالية: CREATE TABLE في قاعدة البيانات، ALTER، SELECT، INSERT، DELETE في جدول الإخراج أو مخططها، وSELECT في عرض كتالوج sys.indexes.

إذا كنت تريد إنشاء الجدول يدوياً في وقت مبكر، فيجب أن يحتوي على الخصائص التالية:

  1. أعمدة ذات الاسم وأنواع البيانات الصحيحة لمجموعة النتائج.
  2. عمود إضافي لـ internal_execution_id مع نوع بيانات المعرف الفريد.
  3. فهرس غير متفاوت يسمى IX_<TableName>_Internal_Execution_ID في العمود internal_execution_id.
  4. جميع الأذونات المذكورة أعلاه باستثناء إذن CREATE TABLE في قاعدة البيانات.

اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأوامر التالية:

--Connect to the job database specified when creating the job agent

-- Add a job to collect perf results
EXEC jobs.sp_add_job @job_name ='ResultsJob', @description='Collection Performance data from all customers'

-- Add a job step w/ schedule to collect results
EXEC jobs.sp_add_jobstep
@job_name = 'ResultsJob',
@command = N' SELECT DB_NAME() DatabaseName, $(job_execution_id) AS job_execution_id, * FROM sys.dm_db_resource_stats WHERE end_time > DATEADD(mi, -20, GETDATE());',
@credential_name = 'job_credential',
@target_group_name = 'PoolGroup',
@output_type = 'SqlDatabase',
@output_credential_name = 'job_credential',
@output_server_name = 'server1.database.windows.net',
@output_database_name = '<resultsdb>',
@output_table_name = '<resultstable>';

--Create a job to monitor pool performance

--Connect to the job database specified when creating the job agent

-- Add a target group containing Elastic Job database
EXEC jobs.sp_add_target_group 'ElasticJobGroup';

-- Add a server target member
EXEC jobs.sp_add_target_group_member
@target_group_name = 'ElasticJobGroup',
@target_type = 'SqlDatabase',
@server_name = 'server1.database.windows.net',
@database_name = 'master';

-- Add a job to collect perf results
EXEC jobs.sp_add_job
@job_name = 'ResultsPoolsJob',
@description = 'Demo: Collection Performance data from all pools',
@schedule_interval_type = 'Minutes',
@schedule_interval_count = 15;

-- Add a job step w/ schedule to collect results
EXEC jobs.sp_add_jobstep
@job_name='ResultsPoolsJob',
@command=N'declare @now datetime
DECLARE @startTime datetime
DECLARE @endTime datetime
DECLARE @poolLagMinutes datetime
DECLARE @poolStartTime datetime
DECLARE @poolEndTime datetime
SELECT @now = getutcdate ()
SELECT @startTime = dateadd(minute, -15, @now)
SELECT @endTime = @now
SELECT @poolStartTime = dateadd(minute, -30, @startTime)
SELECT @poolEndTime = dateadd(minute, -30, @endTime)

SELECT elastic_pool_name , end_time, elastic_pool_dtu_limit, avg_cpu_percent, avg_data_io_percent, avg_log_write_percent, max_worker_percent, max_session_percent,
        avg_storage_percent, elastic_pool_storage_limit_mb FROM sys.elastic_pool_resource_stats
        WHERE end_time > @poolStartTime and end_time <= @poolEndTime;
',
@credential_name = 'job_credential',
@target_group_name = 'ElasticJobGroup',
@output_type = 'SqlDatabase',
@output_credential_name = 'job_credential',
@output_server_name = 'server1.database.windows.net',
@output_database_name = 'resultsdb',
@output_table_name = 'resultstable';

عرض تعريفات الوظائف

يوضح المثال التالي كيفية عرض تعريفات الوظائف الحالية.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

-- View all jobs
SELECT * FROM jobs.jobs;

-- View the steps of the current version of all jobs
SELECT js.* FROM jobs.jobsteps js
JOIN jobs.jobs j
  ON j.job_id = js.job_id AND j.job_version = js.job_version;

-- View the steps of all versions of all jobs
SELECT * FROM jobs.jobsteps;

ابدأ التنفيذ غير المخطط له لوظيفة ما

يوضح المثال التالي كيفية بدء عمل على الفور.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

-- Execute the latest version of a job
EXEC jobs.sp_start_job 'CreateTableTest';

-- Execute the latest version of a job and receive the execution id
declare @je uniqueidentifier;
exec jobs.sp_start_job 'CreateTableTest', @job_execution_id = @je output;
select @je;

select * from jobs.job_executions where job_execution_id = @je;

-- Execute a specific version of a job (e.g. version 1)
exec jobs.sp_start_job 'CreateTableTest', 1;

جدولة تنفيذ وظيفة

يوضح المثال التالي كيفية جدولة وظيفة للتنفيذ المستقبلي.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

EXEC jobs.sp_update_job
@job_name = 'ResultsJob',
@enabled=1,
@schedule_interval_type = 'Minutes',
@schedule_interval_count = 15;

مراقبة حالة تنفيذ المهمة

يوضح المثال التالي كيفية عرض تفاصيل حالة التنفيذ لجميع الوظائف.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

--View top-level execution status for the job named 'ResultsPoolJob'
SELECT * FROM jobs.job_executions
WHERE job_name = 'ResultsPoolsJob' and step_id IS NULL
ORDER BY start_time DESC;

--View all top-level execution status for all jobs
SELECT * FROM jobs.job_executions WHERE step_id IS NULL
ORDER BY start_time DESC;

--View all execution statuses for job named 'ResultsPoolsJob'
SELECT * FROM jobs.job_executions
WHERE job_name = 'ResultsPoolsJob'
ORDER BY start_time DESC;

-- View all active executions
SELECT * FROM jobs.job_executions
WHERE is_active = 1
ORDER BY start_time DESC;

إلغاء وظيفة

يوضح المثال التالي كيفية إلغاء الوظيفة.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

-- View all active executions to determine job execution id
SELECT * FROM jobs.job_executions
WHERE is_active = 1 AND job_name = 'ResultPoolsJob'
ORDER BY start_time DESC;
GO

-- Cancel job execution with the specified job execution id
EXEC jobs.sp_stop_job '01234567-89ab-cdef-0123-456789abcdef';

شطب تاريخ العمل القديم

يوضح المثال التالي كيفية شطب سجل الوظائف قبل تاريخ محدد.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

-- Delete history of a specific job's executions older than the specified date
EXEC jobs.sp_purge_jobhistory @job_name='ResultPoolsJob', @oldest_date='2016-07-01 00:00:00';

--Note: job history is automatically deleted if it is >45 days old

شطب وظيفة وكل تاريخها الوظيفي

يوضح المثال التالي كيفية شطب وظيفة وكل محفوظات الوظائف ذات الصلة.
اتصل بـ قاعدة بيانات الوظائف وقم بتشغيل الأمر التالي:

--Connect to the job database specified when creating the job agent

EXEC jobs.sp_delete_job @job_name='ResultsPoolsJob';

--Note: job history is automatically deleted if it is >45 days old

إجراءات تخزين الوظائف

الإجراءات المخزنة التالية موجودة في قاعدة بيانات الوظائف.

الإجراء المخزن الوصف
sp_add_job يضيف وظيفة جديدة.
sp_update_job يحدّث وظيفة موجودة.
sp_delete_job يشطب وظيفة موجودة.
sp_add_jobstep يضيف خطوة إلى الوظيفة.
sp_update_jobstep يحدّث خطوة الوظيفة.
sp_delete_jobstep يشطب خطوة الوظيفة.
sp_start_job يبدأ في تنفيذ الوظيفة.
sp_stop_job يوقف تنفيذ الوظيفة.
sp_add_target_group يضيف مجموعة مستهدفة.
sp_delete_target_group يشطب مجموعة مستهدفة.
sp_add_target_group_member يضيف قاعدة بيانات أو مجموعة قواعد بيانات إلى مجموعة مستهدفة.
sp_delete_target_group_member يزيل عضو المجموعة المستهدفة من المجموعة المستهدفة.
sp_purge_jobhistory يزيل سجلات التاريخ لوظيفة ما.

sp_add_job

يضيف وظيفة جديدة.

بناء الجملة

[jobs].sp_add_job [ @job_name = ] 'job_name'  
  [ , [ @description = ] 'description' ]
  [ , [ @enabled = ] enabled ]
  [ , [ @schedule_interval_type = ] schedule_interval_type ]  
  [ , [ @schedule_interval_count = ] schedule_interval_count ]
  [ , [ @schedule_start_time = ] schedule_start_time ]
  [ , [ @schedule_end_time = ] schedule_end_time ]
  [ , [ @job_id = ] job_id OUTPUT ]

الوسيطات

[ @job_name = ] 'job_name'
اسم العمل. يجب أن يكون الاسم فريداً ولا يمكن أن يحتوي على حرف النسبة المئوية (٪). job_name هو nvarchar (128)، مع عدم وجود افتراضي.

[ @description = ] 'description'
وصف الوظيفة. الوصف هو nvarchar (512)، افتراضياً هو NULL. إذا تم شطب الوصف، فسيتم استخدام سلسلة فارغة.

[ @enabled = ] ممكَّن
ما إذا كان الجدول الزمني للوظيفة ممكّناً أم لا. تم التمكين بت، مع افتراضي 0 (معطل). إذا كانت 0، لا يتم تمكين الوظيفة ولا تعمل وفقاً لجدولها الزمني؛ ومع ذلك، يمكن تشغيله يدوياً. إذا كان 1، فسيتم تشغيل الوظيفة وفقاً لجدولها الزمني، ويمكن أيضاً تشغيلها يدوياً.

[ @schedule_interval_type =] schedule_interval_type
تشير القيمة إلى وقت تنفيذ المهمة. النوع Schedule_interval هو nvarchar (50)، مع الإعداد الافتراضي مرة واحدة، ويمكن أن يكون أحد القيم التالية:

  • 'مرة واحدة'،
  • 'الدقائق'،
  • 'ساعات'،
  • 'أيام'،
  • 'أسابيع'،
  • 'شهور'

[ @schedule_interval_count = ] schedule_interval_count
عدد الفترات schedule_interval_count التي يجب أن تحدث بين كل تنفيذ للمهمة. Schedule_interval_count هو int، مع القيمة الافتراضية 1. يجب أن تكون القيمة أكبر من أو تساوي 1.

[ @schedule_start_time = ] schedule_start_time
التاريخ الذي يمكن أن يبدأ فيه تنفيذ الوظيفة. Schedule_start_time هو DATETIME2، مع القيمة الافتراضية 0001-01-01 00:00:00.0000000.

[ @schedule_end_time = ] schedule_end_time
التاريخ الذي يمكن أن يتوقف فيه تنفيذ الوظيفة. Schedule_end_time هو DATETIME2، مع الإعداد الافتراضي 9999-12-31 11:59:59.0000000.

[ @job_id = ] job_id OUTPUT
رقم تعريف الوظيفة المخصص للوظيفة إذا تم إنشاؤه بنجاح. job_id هو متغير إخراج من نوع معرف فريد.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

يجب تشغيل sp_add_job من قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة. بعد تنفيذ sp_add_job لإضافة وظيفة، يمكن استخدام sp_add_jobstep لإضافة خطوات تؤدي الأنشطة للوظيفة. رقم الإصدار الأولي للمهمة هو 0، والذي سيتم زيادته إلى 1 عند إضافة الخطوة الأولى.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_update_job

يحدّث وظيفة موجودة.

بناء الجملة

[jobs].sp_update_job [ @job_name = ] 'job_name'  
  [ , [ @new_name = ] 'new_name' ]
  [ , [ @description = ] 'description' ]
  [ , [ @enabled = ] enabled ]
  [ , [ @schedule_interval_type = ] schedule_interval_type ]  
  [ , [ @schedule_interval_count = ] schedule_interval_count ]
  [ , [ @schedule_start_time = ] schedule_start_time ]
  [ , [ @schedule_end_time = ] schedule_end_time ]

الوسيطات

[ @job_name = ] 'job_name'
اسم الوظيفة المراد تحديثها. job_name هو nvarchar(128).

[ @new_name = ] 'new_name'
الاسم الجديد للوظيفة. اسم جديد هو nvarchar(128).

[ @description = ] 'description'
وصف الوظيفة. الوصف هو nvarchar (512).

[ @enabled = ] ممكَّن
يحدد ما إذا كان جدول المهمة ممكّناً (1) أم لا (0). ممكن قليلا.

[ @schedule_interval_type= ] schedule_interval_type
تشير القيمة إلى وقت تنفيذ المهمة. Schedule_interval_type هي nvarchar (50) ويمكن أن تكون إحدى القيم التالية:

  • 'مرة واحدة'،
  • 'الدقائق'،
  • 'ساعات'،
  • 'أيام'،
  • 'أسابيع'،
  • 'شهور'

[ @schedule_interval_count= ] schedule_interval_count
عدد الفترات schedule_interval_count التي يجب أن تحدث بين كل تنفيذ للمهمة. Schedule_interval_count هو int، مع القيمة الافتراضية 1. يجب أن تكون القيمة أكبر من أو تساوي 1.

[ @schedule_start_time= ] schedule_start_time
التاريخ الذي يمكن أن يبدأ فيه تنفيذ الوظيفة. Schedule_start_time هو DATETIME2، مع القيمة الافتراضية 0001-01-01 00:00:00.0000000.

[ @schedule_end_time= ] schedule_end_time
التاريخ الذي يمكن أن يتوقف فيه تنفيذ الوظيفة. Schedule_end_time هو DATETIME2، مع الإعداد الافتراضي 9999-12-31 11:59:59.0000000.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

بعد تنفيذ sp_add_job لإضافة وظيفة، يمكن استخدام sp_add_jobstep لإضافة خطوات تؤدي الأنشطة للوظيفة. رقم الإصدار الأولي للمهمة هو 0، والذي سيتم زيادته إلى 1 عند إضافة الخطوة الأولى.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_delete_job

يشطب وظيفة موجودة.

بناء الجملة

[jobs].sp_delete_job [ @job_name = ] 'job_name'
  [ , [ @force = ] force ]

الوسيطات

[ @job_name = ] 'job_name'
اسم الوظيفة المراد شطبها. job_name هو nvarchar(128).

[ @force = ] القوة
يحدد ما إذا كان سيتم الشطب إذا كان للمهمة أي عمليات تنفيذ جارية وإلغاء جميع عمليات التنفيذ قيد التقدم (1) أو الفشل إذا كانت أي عمليات تنفيذ مهمة قيد التقدم (0). القوة بت.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

يتم شطب سجل الوظيفة تلقائياً عند شطب الوظيفة.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_add_jobstep

يضيف خطوة إلى الوظيفة.

بناء الجملة

[jobs].sp_add_jobstep [ @job_name = ] 'job_name'
     [ , [ @step_id = ] step_id ]
     [ , [ @step_name = ] step_name ]
     [ , [ @command_type = ] 'command_type' ]
     [ , [ @command_source = ] 'command_source' ]  
     , [ @command = ] 'command'
     , [ @credential_name = ] 'credential_name'
     , [ @target_group_name = ] 'target_group_name'
     [ , [ @initial_retry_interval_seconds = ] initial_retry_interval_seconds ]
     [ , [ @maximum_retry_interval_seconds = ] maximum_retry_interval_seconds ]
     [ , [ @retry_interval_backoff_multiplier = ] retry_interval_backoff_multiplier ]
     [ , [ @retry_attempts = ] retry_attempts ]
     [ , [ @step_timeout_seconds = ] step_timeout_seconds ]
     [ , [ @output_type = ] 'output_type' ]
     [ , [ @output_credential_name = ] 'output_credential_name' ]
     [ , [ @output_subscription_id = ] 'output_subscription_id' ]
     [ , [ @output_resource_group_name = ] 'output_resource_group_name' ]
     [ , [ @output_server_name = ] 'output_server_name' ]
     [ , [ @output_database_name = ] 'output_database_name' ]
     [ , [ @output_schema_name = ] 'output_schema_name' ]
     [ , [ @output_table_name = ] 'output_table_name' ]
     [ , [ @job_version = ] job_version OUTPUT ]
     [ , [ @max_parallelism = ] max_parallelism ]

الوسيطات

[ @job_name = ] 'job_name'
اسم الوظيفة المراد إضافة الخطوة إليها. job_name هو nvarchar(128).

[ @step_id = ] step_id
رقم تعريف التسلسل لخطوة الوظيفة. تبدأ أرقام تحديد الخطوة من 1 وتتزايد دون فجوات. إذا كانت هناك خطوة حالية تحتوي على هذا المعرف بالفعل، فسيتم زيادة معرف هذه الخطوة وجميع الخطوات التالية بحيث يمكن إدراج هذه الخطوة الجديدة في التسلسل. إذا لم يتم تحديده، فسيتم تعيين step_id تلقائياً إلى الأخير في تسلسل الخطوات. step_id هو عدد صحيح.

[ @step_name = ] step_name
اسم الخطوة. يجب تحديده، باستثناء الخطوة الأولى من الوظيفة التي (للتسهيل) لها اسم افتراضي "JobStep". اسم الخطوة هو nvarchar(128).

[ @command_type = ] 'command_type'
نوع الأمر الذي يتم تنفيذه بواسطة خطوة العمل تلك. command_type هو nvarchar (50)، مع القيمة الافتراضية TSql، ما يعني أن قيمة المعلمة @command_type هي نص T-SQL.

إذا تم تحديدها، يجب أن تكون القيمة TSql.

[ @command_source = ] 'command_source'
نوع الموقع حيث يتم تخزين الأمر. command_source هي nvarchar (50)، مع القيمة الافتراضية Inline، ما يعني أن قيمة المعلمة @command_source هي النص الحرفي للأمر.

إذا تم تحديدها، يجب أن تكون القيمة مضمنة.

[ @command = ] 'command'
يجب أن يكون الأمر نصياً صالحاً لـ T-SQL ثم يتم تنفيذه بواسطة خطوة المهمة تلك. الأمر هو nvarchar (max)، مع الإعداد الافتراضي NULL.

[ @credential_name = ] 'credential_name'
اسم بيانات الاعتماد المحددة في نطاق قاعدة البيانات المخزنة في قاعدة بيانات التحكم في الوظيفة تلك والتي يتم استخدامها للاتصال بكل من قواعد البيانات الهدف داخل المجموعة الهدف عند تنفيذ تلك الخطوة. الاعتماد_الاسم هو nvarchar (128).

[ @target_group_name = ] 'target-group_name'
اسم المجموعة المستهدفة التي تحتوي على قواعد البيانات المستهدفة التي ستُنفَّذ عليها خطوة المهمة. target_group_name هو nvarchar (128).

[ @initial_retry_interval_seconds = ] initial_retry_interval_seconds
التأخير قبل محاولة إعادة المحاولة الأولى، إذا فشلت خطوة المهمة في محاولة التنفيذ الأولية. الأولي_ريتري_ينتيرفال_ثواني هو عدد صحيح، مع القيمة الافتراضية 1.

[ @maximum_retry_interval_seconds = ] maximum_retry_interval_seconds
الحد الأقصى للتأخير بين محاولات إعادة المحاولة. إذا زاد التأخير بين عمليات إعادة المحاولة عن تلك القيمة، فسيتم توجهها إلى تلك القيمة بدلاً من ذلك. max_retry_interval_seconds هي int، مع القيمة الافتراضية 120.

[ @retry_interval_backoff_multiplier = ] retry_interval_backoff_multiplier
المضاعف الذي سيتم تطبيقه على تأخير إعادة المحاولة إذا فشلت محاولات تنفيذ خطوة مهمة متعددة. على سبيل المثال، إذا كانت إعادة المحاولة الأولى لها تأخير لمدة 5 ثوانٍ وكان مضاعف التراجع 2.0، فستتأخر إعادة المحاولة الثانية بمقدار 10 ثوانٍ وستتأخر إعادة المحاولة الثالثة لمدة 20 ثانية. retry_interval_backoff_multiplier حقيقي، بقيمة افتراضية 2.0.

[ @retry_attempts = ] retry_attempts
عدد مرات إعادة محاولة التنفيذ إذا فشلت المحاولة الأولية. على سبيل المثال، إذا كانت قيمة retry_attempts هي 10، فستكون هناك محاولة أولية واحدة و10 محاولات لإعادة المحاولة، ما يعطي إجمالي 11 محاولة. إذا فشلت محاولة إعادة المحاولة النهائية، فسيتم إنهاء تنفيذ المهمة بدورة حياة باءت بالفشل. retry_attempts هي int، بقيمة افتراضية 10.

[ @step_timeout_seconds = ] step_timeout_seconds
الحد الأقصى من الوقت المسموح به لتنفيذ الخطوة. إذا تم تجاوز هذا الوقت، فسينتهي تنفيذ المهمة بدورة حياة TimedOut. step_timeout_seconds عدد صحيح، مع القيمة الافتراضية 43200 ثانية (12 ساعة).

[ @output_type = ] 'output_type'
إذا لم تكن خالية، فإن نوع الوجهة التي تُكتب مجموعة النتائج الأولى لها. output_type هي nvarchar (50)، مع افتراضي NULL.

إذا تم تحديدها، يجب أن تكون القيمة SqlDatabase.

[ @output_credential_name = ] 'output_credential_name'
إذا لم يكن فارغاً، فسيتم تحديد نطاق قاعدة البيانات باستخدام بيانات الاعتماد المستخدمة للاتصال بقاعدة بيانات وجهة الإخراج. يجب تحديد ما إذا كان نوع الإخراج يساوي SqlDatabase. output_credential_name هي nvarchar (128)، مع القيمة الافتراضية NULL.

[ @output_subscription_id = ] 'output_subscription_id'
يحتاج إلى وصف.

[ @output_resource_group_name = ] 'output_resource_group_name'
يحتاج إلى وصف.

[ @output_server_name = ] 'output_server_name'
إذا لم يكن فارغاً، اسم DNS المؤهل بالكامل للخادم الذي يحتوي على قاعدة بيانات وجهة الإخراج. يجب تحديد ما إذا كان نوع الإخراج يساوي SqlDatabase. output_server_name هي nvarchar (256)، مع القيمة الافتراضية NULL.

[ @output_database_name = ] 'output_database_name'
إذا لم يكن فارغاً، فاسم قاعدة البيانات التي تحتوي على جدول وجهة الإخراج. يجب تحديد ما إذا كان نوع الإخراج يساوي SqlDatabase. output_database_name هي nvarchar (128)، مع القيمة الافتراضية NULL.

[ @output_schema_name = ] 'output_schema_name'
إذا لم يكن فارغاً، فاسم مخطط SQL الذي يحتوي على جدول وجهة الإخراج. إذا كانت قيمة output_type تساوي SqlDatabase، فإن القيمة الافتراضية هي dbo. اسم مخطط الإخراج هو nvarchar(128).

[ @output_table_name = ] 'output_table_name'
إذا لم يكن فارغاً، فسيتم كتابة اسم الجدول الذي سيتم كتابة مجموعة النتائج الأولى له. إذا لم يكن الجدول موجوداً بالفعل، فسيتم إنشاؤه بناءً على مخطط مجموعة النتائج المرتجعة. يجب تحديد ما إذا كان نوع الإخراج يساوي SqlDatabase. output_table_name هي nvarchar (128)، مع القيمة الافتراضية NULL.

[ @job_version = ] job_version OUTPUT
معلمة الإخراج التي سيتم تعيين رقم إصدار الوظيفة الجديد لها. job_version هو int.

[ @max_parallelism = ] max_parallelism OUTPUT
الحد الأقصى لمستوى التوازي لكل تجمع مرن. في حالة التعيين، سيتم تقييد خطوة الوظيفة للتشغيل فقط على الحد الأقصى من قواعد البيانات العديدة لكل تجمع مرن. ينطبق هذا على كل تجمع مرن إما مدرج مباشرة في المجموعة المستهدفة أو داخل خادم مدرج في المجموعة المستهدفة. max_parallelism هو int.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

عند نجاح sp_add_jobstep، يتم زيادة رقم الإصدار الحالي للمهمة. في المرة التالية التي يتم فيها تنفيذ المهمة، سيتم استخدام الإصدار الجديد. إذا كانت المهمة قيد التنفيذ حالياً، فلن يحتوي هذا التنفيذ على الخطوة الجديدة.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_update_jobstep

يحدّث خطوة الوظيفة.

بناء الجملة

[jobs].sp_update_jobstep [ @job_name = ] 'job_name'
     [ , [ @step_id = ] step_id ]
     [ , [ @step_name = ] 'step_name' ]
     [ , [ @new_id = ] new_id ]
     [ , [ @new_name = ] 'new_name' ]
     [ , [ @command_type = ] 'command_type' ]
     [ , [ @command_source = ] 'command_source' ]  
     , [ @command = ] 'command'
     , [ @credential_name = ] 'credential_name'
     , [ @target_group_name = ] 'target_group_name'
     [ , [ @initial_retry_interval_seconds = ] initial_retry_interval_seconds ]
     [ , [ @maximum_retry_interval_seconds = ] maximum_retry_interval_seconds ]
     [ , [ @retry_interval_backoff_multiplier = ] retry_interval_backoff_multiplier ]
     [ , [ @retry_attempts = ] retry_attempts ]
     [ , [ @step_timeout_seconds = ] step_timeout_seconds ]
     [ , [ @output_type = ] 'output_type' ]
     [ , [ @output_credential_name = ] 'output_credential_name' ]
     [ , [ @output_server_name = ] 'output_server_name' ]
     [ , [ @output_database_name = ] 'output_database_name' ]
     [ , [ @output_schema_name = ] 'output_schema_name' ]
     [ , [ @output_table_name = ] 'output_table_name' ]
     [ , [ @job_version = ] job_version OUTPUT ]
     [ , [ @max_parallelism = ] max_parallelism ]

الوسيطات

[ @job_name = ] 'job_name'
اسم الوظيفة التي تنتمي إليها الخطوة. job_name هو nvarchar(128).

[ @step_id = ] step_id
رقم التعريف لخطوة الوظيفة المطلوب تعديلها. يجب تحديد إما step_id أو step_name. step_id هو عدد صحيح.

[ @step_name = ] 'step_name'
اسم الخطوة المطلوب تعديلها. يجب تحديد إما step_id أو step_name. اسم الخطوة هو nvarchar(128).

[ @new_id = ] new_id
رقم تعريف التسلسل الجديد لخطوة الوظيفة. تبدأ أرقام تحديد الخطوة من 1 وتتزايد دون فجوات. إذا تمت إعادة ترتيب إحدى الخطوات، فسيتم إعادة ترقيم الخطوات الأخرى تلقائياً.

[ @new_name = ] 'new_name'
الاسم الجديد للخطوة. اسم جديد هو nvarchar(128).

[ @command_type = ] 'command_type'
نوع الأمر الذي يتم تنفيذه بواسطة خطوة العمل تلك. command_type هو nvarchar (50)، مع القيمة الافتراضية TSql، ما يعني أن قيمة المعلمة @command_type هي نص T-SQL.

إذا تم تحديدها، يجب أن تكون القيمة TSql.

[ @command_source = ] 'command_source'
نوع الموقع حيث يتم تخزين الأمر. command_source هي nvarchar (50)، مع القيمة الافتراضية Inline، ما يعني أن قيمة المعلمة @command_source هي النص الحرفي للأمر.

إذا تم تحديدها، يجب أن تكون القيمة مضمنة.

[ @command = ] 'command'
يجب أن يكون الأمر (الأوامر) نصياً صالحاً لـ T-SQL ثم يتم تنفيذه بواسطة خطوة المهمة تلك. الأمر هو nvarchar (max)، مع الإعداد الافتراضي NULL.

[ @credential_name = ] 'credential_name'
اسم بيانات الاعتماد المحددة في نطاق قاعدة البيانات المخزنة في قاعدة بيانات التحكم في الوظيفة تلك والتي يتم استخدامها للاتصال بكل من قواعد البيانات الهدف داخل المجموعة الهدف عند تنفيذ تلك الخطوة. الاعتماد_الاسم هو nvarchar (128).

[ @target_group_name = ] 'target-group_name'
اسم المجموعة المستهدفة التي تحتوي على قواعد البيانات المستهدفة التي ستُنفَّذ عليها خطوة المهمة. target_group_name هو nvarchar (128).

[ @initial_retry_interval_seconds = ] initial_retry_interval_seconds
التأخير قبل محاولة إعادة المحاولة الأولى، إذا فشلت خطوة المهمة في محاولة التنفيذ الأولية. الأولي_ريتري_ينتيرفال_ثواني هو عدد صحيح، مع القيمة الافتراضية 1.

[ @maximum_retry_interval_seconds = ] maximum_retry_interval_seconds
الحد الأقصى للتأخير بين محاولات إعادة المحاولة. إذا زاد التأخير بين عمليات إعادة المحاولة عن تلك القيمة، فسيتم توجهها إلى تلك القيمة بدلاً من ذلك. max_retry_interval_seconds هي int، مع القيمة الافتراضية 120.

[ @retry_interval_backoff_multiplier = ] retry_interval_backoff_multiplier
المضاعف الذي سيتم تطبيقه على تأخير إعادة المحاولة إذا فشلت محاولات تنفيذ خطوة مهمة متعددة. على سبيل المثال، إذا كانت إعادة المحاولة الأولى لها تأخير لمدة 5 ثوانٍ وكان مضاعف التراجع 2.0، فستتأخر إعادة المحاولة الثانية بمقدار 10 ثوانٍ وستتأخر إعادة المحاولة الثالثة لمدة 20 ثانية. retry_interval_backoff_multiplier حقيقي، بقيمة افتراضية 2.0.

[ @retry_attempts = ] retry_attempts
عدد مرات إعادة محاولة التنفيذ إذا فشلت المحاولة الأولية. على سبيل المثال، إذا كانت قيمة retry_attempts هي 10، فستكون هناك محاولة أولية واحدة و10 محاولات لإعادة المحاولة، ما يعطي إجمالي 11 محاولة. إذا فشلت محاولة إعادة المحاولة النهائية، فسيتم إنهاء تنفيذ المهمة بدورة حياة باءت بالفشل. retry_attempts هي int، بقيمة افتراضية 10.

[ @step_timeout_seconds = ] step_timeout_seconds
الحد الأقصى من الوقت المسموح به لتنفيذ الخطوة. إذا تم تجاوز هذا الوقت، فسينتهي تنفيذ المهمة بدورة حياة TimedOut. step_timeout_seconds عدد صحيح، مع القيمة الافتراضية 43200 ثانية (12 ساعة).

[ @output_type = ] 'output_type'
إذا لم تكن خالية، فإن نوع الوجهة التي يتم كتابة مجموعة النتائج الأولى لها. لإعادة تعيين قيمة output_type إلى NULL، اضبط قيمة هذا المعامل على '' (سلسلة فارغة). output_type هي nvarchar (50)، مع القيمة الافتراضية NULL.

إذا تم تحديدها، يجب أن تكون القيمة SqlDatabase.

[ @output_credential_name = ] 'output_credential_name'
إذا لم يكن فارغاً، فسيتم تحديد نطاق قاعدة البيانات باستخدام بيانات الاعتماد المستخدمة للاتصال بقاعدة بيانات وجهة الإخراج. يجب تحديد ما إذا كان نوع الإخراج يساوي SqlDatabase. لإعادة تعيين قيمة output_credential_name مرة أخرى إلى NULL، اضبط قيمة هذه المعلمة على '' (سلسلة فارغة). output_credential_name هي nvarchar (128)، مع القيمة الافتراضية NULL.

[ @output_server_name = ] 'output_server_name'
إذا لم يكن فارغاً، اسم DNS المؤهل بالكامل للخادم الذي يحتوي على قاعدة بيانات وجهة الإخراج. يجب تحديد ما إذا كان نوع الإخراج يساوي SqlDatabase. لإعادة تعيين قيمة output_server_name مرة أخرى إلى NULL، اضبط قيمة هذا المعامل على '' (سلسلة فارغة). output_server_name هي nvarchar (256)، مع القيمة الافتراضية NULL.

[ @output_database_name = ] 'output_database_name'
إذا لم يكن فارغاً، فاسم قاعدة البيانات التي تحتوي على جدول وجهة الإخراج. يجب تحديد ما إذا كان نوع الإخراج يساوي SqlDatabase. لإعادة تعيين قيمة output_database_name مرة أخرى إلى NULL، قم بتعيين قيمة هذه المعلمة إلى '' (سلسلة فارغة). output_database_name هي nvarchar (128)، مع القيمة الافتراضية NULL.

[ @output_schema_name = ] 'output_schema_name'
إذا لم يكن فارغاً، فاسم مخطط SQL الذي يحتوي على جدول وجهة الإخراج. إذا كانت قيمة output_type تساوي SqlDatabase، فإن القيمة الافتراضية هي dbo. لإعادة تعيين قيمة output_schema_name مرة أخرى إلى NULL، اضبط قيمة هذا المعامل على '' (سلسلة فارغة). اسم مخطط الإخراج هو nvarchar(128).

[ @output_table_name = ] 'output_table_name'
إذا لم يكن فارغاً، فسيتم كتابة اسم الجدول الذي سيتم كتابة مجموعة النتائج الأولى له. إذا لم يكن الجدول موجوداً بالفعل، فسيتم إنشاؤه بناءً على مخطط مجموعة النتائج المرتجعة. يجب تحديد ما إذا كان نوع الإخراج يساوي SqlDatabase. لإعادة تعيين قيمة output_server_name مرة أخرى إلى NULL، اضبط قيمة هذا المعامل على '' (سلسلة فارغة). output_table_name هي nvarchar (128)، مع القيمة الافتراضية NULL.

[ @job_version = ] job_version OUTPUT
معلمة الإخراج التي سيتم تعيين رقم إصدار الوظيفة الجديد لها. job_version هو int.

[ @max_parallelism = ] max_parallelism OUTPUT
الحد الأقصى لمستوى التوازي لكل تجمع مرن. في حالة التعيين، سيتم تقييد خطوة الوظيفة للتشغيل فقط على الحد الأقصى من قواعد البيانات العديدة لكل تجمع مرن. ينطبق هذا على كل تجمع مرن إما مدرج مباشرة في المجموعة المستهدفة أو داخل خادم مدرج في المجموعة المستهدفة. لإعادة قيمة max_parallelism إلى قيمة خالية، اضبط قيمة هذا المعامل على -1. max_parallelism هو int.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

لن تتأثر أي عمليات تنفيذ جارية للوظيفة. عند نجاح sp_update_jobstep، يتم زيادة رقم إصدار الوظيفة. في المرة التالية التي يتم فيها تنفيذ المهمة، سيتم استخدام الإصدار الجديد.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون

sp_delete_jobstep

يزيل خطوة الوظيفة من الوظيفة.

بناء الجملة

[jobs].sp_delete_jobstep [ @job_name = ] 'job_name'
     [ , [ @step_id = ] step_id ]
     [ , [ @step_name = ] 'step_name' ]
     [ , [ @job_version = ] job_version OUTPUT ]

الوسيطات

[ @job_name = ] 'job_name'
اسم الوظيفة التي ستتم إزالة الخطوة منها. job_name هو nvarchar (128)، مع عدم وجود افتراضي.

[ @step_id = ] step_id
رقم التعريف لخطوة الوظيفة المراد شطبها. يجب تحديد إما step_id أو step_name. step_id هو عدد صحيح.

[ @step_name = ] 'step_name'
اسم الخطوة المراد شطبها. يجب تحديد إما step_id أو step_name. اسم الخطوة هو nvarchar(128).

[ @job_version = ] job_version OUTPUT
معلمة الإخراج التي سيتم تعيين رقم إصدار الوظيفة الجديد لها. job_version هو int.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

لن تتأثر أي عمليات تنفيذ جارية للوظيفة. عند نجاح sp_update_jobstep، يتم زيادة رقم إصدار الوظيفة. في المرة التالية التي يتم فيها تنفيذ المهمة، سيتم استخدام الإصدار الجديد.

ستتم إعادة ترقيم خطوات الوظيفة الأخرى تلقائياً لملء الفراغ الذي خلفته خطوة الوظيفة المحذوفة.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_start_job

يبدأ في تنفيذ الوظيفة.

بناء الجملة

[jobs].sp_start_job [ @job_name = ] 'job_name'
     [ , [ @job_execution_id = ] job_execution_id OUTPUT ]

الوسيطات

[ @job_name = ] 'job_name'
اسم الوظيفة التي ستتم إزالة الخطوة منها. job_name هو nvarchar (128)، مع عدم وجود افتراضي.

[ @job_execution_id = ] job_execution_id OUTPUT
معلمة Output التي ستقوم بتعيينها لتنفيذ مهمة المعرف. job_version هو uniqueidentifier.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

لا شيء

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_stop_job

يوقف تنفيذ الوظيفة.

بناء الجملة

[jobs].sp_stop_job [ @job_execution_id = ] ' job_execution_id '

الوسيطات

[ @job_execution_id = ] job_execution_id
رقم تعريف تنفيذ الوظيفة المراد إيقافها. job_execution_id هو معرف فريد، مع القيمة الافتراضية NULL.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

لا شيء

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_add_target_group

يضيف مجموعة مستهدفة.

بناء الجملة

[jobs].sp_add_target_group [ @target_group_name = ] 'target_group_name'
     [ , [ @target_group_id = ] target_group_id OUTPUT ]

الوسيطات

[ @target_group_name = ] 'target_group_name'
اسم المجموعة المستهدفة المراد إنشاؤها. اسم المجموعة المستهدفة هو nvarchar(128)، مع عدم وجود افتراضي.

[ @target_group_id = ] target_group_id OUTPUT The رقم تعيين هدف المجموعة للوظيفة إذا أُعدت بنجاح. target_group_id هو متغير ناتج من معرف نوع فريد، مع افتراضي NULL.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

توفر المجموعات المستهدفة طريقة سهلة لاستهداف وظيفة في مجموعة من قواعد البيانات.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_delete_target_group

يشطب مجموعة مستهدفة.

بناء الجملة

[jobs].sp_delete_target_group [ @target_group_name = ] 'target_group_name'

الوسيطات

[ @target_group_name = ] 'target_group_name'
اسم المجموعة المستهدفة المراد شطبها. اسم المجموعة المستهدفة هو nvarchar(128)، مع عدم وجود افتراضي.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

لا شيء

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

sp_add_target_group_member

يضيف قاعدة بيانات أو مجموعة قواعد بيانات إلى مجموعة مستهدفة.

بناء الجملة

[jobs].sp_add_target_group_member [ @target_group_name = ] 'target_group_name'
         [ @membership_type = ] 'membership_type' ]
        [ , [ @target_type = ] 'target_type' ]
        [ , [ @refresh_credential_name = ] 'refresh_credential_name' ]
        [ , [ @server_name = ] 'server_name' ]
        [ , [ @database_name = ] 'database_name' ]
        [ , [ @elastic_pool_name = ] 'elastic_pool_name' ]
        [ , [ @shard_map_name = ] 'shard_map_name' ]
        [ , [ @target_id = ] 'target_id' OUTPUT ]

الوسيطات

[ @target_group_name = ] 'target_group_name'
اسم المجموعة المستهدفة التي ستتم إضافة العضو إليها. اسم المجموعة المستهدفة هو nvarchar(128)، مع عدم وجود افتراضي.

[ @membership_type = ] 'membership_type'
يحدد ما إذا كان سيتم تضمين عضو المجموعة المستهدفة أو استبعاده. target_group_name هو nvarchar (128)، مع الإعداد الافتراضي لـ "Include". القيم الصالحة لنوع العضوية هي "تضمين" أو "استبعاد".

[ @target_type = ] 'target_type'
نوع قاعدة البيانات الهدف أو مجموعة قواعد البيانات بما في ذلك جميع قواعد البيانات في الخادم، وجميع قواعد البيانات في تجمع مرن، وجميع قواعد البيانات في خريطة جزء، أو قاعدة بيانات فردية. database_name هو nvarchar (128)، مع عدم وجود افتراضي. القيم الصالحة لـ target_type هي 'SqlServer' أو 'SqlElasticPool' أو 'SqlDatabase' أو 'SqlShardMap'.

[ @refresh_credential_name = ] 'refresh_credential_name'
اسم قاعدة البيانات المحددة نطاق بيانات الاعتماد. Refresh_credential_name هو nvarchar (128)، مع عدم وجود افتراضي.

[ @server_name = ] 'server_name'
اسم الخادم الذي يجب إضافته إلى المجموعة المستهدفة المحددة. يجب تحديد اسم_الخدمة عندما يكون target_type هو "SqlServer". server_name هو nvarchar (128)، مع عدم وجود افتراضي.

[ @database_name = ] 'database_name'
اسم قاعدة البيانات التي يجب إضافتها إلى المجموعة المستهدفة المحددة. يجب تحديد اسم قاعدة البيانات عندما يكون target_type هو "SqlDatabase". database_name هو nvarchar (128)، مع عدم وجود افتراضي.

[ @elastic_pool_name = ] 'elastic_pool_name'
اسم التجمع المرن الذي يجب إضافته إلى المجموعة المستهدفة المحددة. يجب تحديد Rubber_pool_name عندما يكون target_type هو "SqlElasticPool". مرونة_تجمع_اسم هو nvarchar (128)، مع عدم وجود افتراضي.

[ @shard_map_name = ] 'shard_map_name'
اسم تجمع خريطة الجزء الذي يجب إضافته إلى المجموعة المستهدفة المحددة. يجب تحديد Rubber_pool_name عندما يكون target_type هو "SqlShardMap". shard_map_name هو nvarchar (128)، مع عدم وجود افتراضي.

[ @target_id = ] target_group_id OUTPUT
رقم تعريف الهدف المخصص لعضو المجموعة المستهدفة إذا تم إنشاؤه وإضافته إلى المجموعة المستهدفة. target_id هو متغير إخراج من نوع معرف فريد، مع افتراضي NULL. إرجاع قيم التعليمات البرمجية 0 (نجاح) أو 1 (فشل)

الملاحظات

يتم تنفيذ المهمة على جميع قواعد البيانات الفردية داخل الخادم أو في تجمع مرن في وقت التنفيذ، عندما يتم تضمين خادم أو تجمع مرن في المجموعة المستهدفة.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

أمثلة

يضيف المثال التالي جميع قواعد البيانات الموجودة في خوادم London وNewYork إلى مجموعة الخوادم التي تحتفظ بمعلومات العميل. يجب عليك الاتصال بقاعدة بيانات الوظائف المحددة عند إنشاء عامل الوظيفة، في هذه الحالة ElasticJobs.

--Connect to the jobs database specified when creating the job agent
USE ElasticJobs;
GO

-- Add a target group containing server(s)
EXEC jobs.sp_add_target_group @target_group_name =  N'Servers Maintaining Customer Information';
GO

-- Add a server target member
EXEC jobs.sp_add_target_group_member
@target_group_name = N'Servers Maintaining Customer Information',
@target_type = N'SqlServer',
@refresh_credential_name=N'refresh_credential', --credential required to refresh the databases in server
@server_name=N'London.database.windows.net';
GO

-- Add a server target member
EXEC jobs.sp_add_target_group_member
@target_group_name = N'Servers Maintaining Customer Information',
@target_type = N'SqlServer',
@refresh_credential_name=N'refresh_credential', --credential required to refresh the databases in server
@server_name=N'NewYork.database.windows.net';
GO

--View the recently added members to the target group
SELECT * FROM [jobs].target_group_members WHERE target_group_name= N'Servers Maintaining Customer Information';
GO

sp_delete_target_group_member

يزيل عضو المجموعة المستهدفة من المجموعة المستهدفة.

بناء الجملة

[jobs].sp_delete_target_group_member [ @target_group_name = ] 'target_group_name'
   [ , [ @target_id = ] 'target_id']

الوسيطات

[ @target_group_name = ] 'اسم المجموعة المستهدفة'
اسم المجموعة المستهدفة المراد إزالة عضو المجموعة المستهدفة منها. اسم المجموعة المستهدفة هو nvarchar(128)، مع عدم وجود افتراضي.

[ @target_id = ] هدف_id
رقم تعريف الهدف المخصص لعضو المجموعة المستهدفة المراد إزالته. target_id هو معرف فريد، افتراضياً هو NULL.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

توفر المجموعات المستهدفة طريقة سهلة لاستهداف وظيفة في مجموعة من قواعد البيانات.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

أمثلة

يزيل المثال التالي خادم لندن من مجموعة الخوادم التي تحتفظ بمعلومات العميل. يجب عليك الاتصال بقاعدة بيانات الوظائف المحددة عند إنشاء عامل الوظيفة، في هذه الحالة ElasticJobs.

--Connect to the jobs database specified when creating the job agent
USE ElasticJobs ;
GO

-- Retrieve the target_id for a target_group_members
declare @tid uniqueidentifier
SELECT @tid = target_id FROM [jobs].target_group_members WHERE target_group_name = 'Servers Maintaining Customer Information' and server_name = 'London.database.windows.net';

-- Remove a target group member of type server
EXEC jobs.sp_delete_target_group_member
@target_group_name = N'Servers Maintaining Customer Information',
@target_id = @tid;
GO

sp_purge_jobhistory

يزيل سجلات التاريخ لوظيفة ما.

بناء الجملة

[jobs].sp_purge_jobhistory [ @job_name = ] 'job_name'
      [ , [ @job_id = ] job_id ]
      [ , [ @oldest_date = ] oldest_date []

الوسيطات

[ @job_name = ] 'job_name'
اسم الوظيفة المراد شطب سجلات المحفوظات الخاصة بها. job_name هو nvarchar (128)، مع القيمة الافتراضية NULL. يجب تحديد job_id أو job_name، لكن لا يمكن تحديد كليهما.

[ @job_id = ] job_id
رقم تعريف الوظيفة للسجلات المراد شطبها. job_id هو معرف فريد، افتراضياً هو NULL. يجب تحديد job_id أو job_name، لكن لا يمكن تحديد كليهما.

[ @oldest_date = ] oldest_date
أقدم سجل للاحتفاظ به في التاريخ. oldest_date هو DATETIME2، مع القيمة الافتراضية NULL. عند تحديد oldest_date، يزيل sp_purge_jobhistory فقط السجلات الأقدم من القيمة المحددة.

إرجاع قيم التعليمة البرمجية

0 (نجاح) أو 1 (فشل)

الملاحظات

توفر المجموعات المستهدفة طريقة سهلة لاستهداف وظيفة في مجموعة من قواعد البيانات.

الأذونات

بشكل افتراضي، يمكن لأعضاء دور الخادم الثابت لمسؤول النظام تنفيذ هذا الإجراء المخزن. يقيدون المستخدم ليتمكن فقط من مراقبة الوظائف، يمكنك منح المستخدم ليكون جزءاً من دور قاعدة البيانات التالي في قاعدة بيانات عامل الوظيفة المحددة عند إنشاء عامل الوظيفة:

  • وظائف_قارئ

للحصول على تفاصيل عن أذونات هذه الأدوار، راجع قسم الأذونات في هذا المستند. يمكن لأعضاء مسؤول النظام فقط استخدام هذا الإجراء المخزن لتحرير سمات الوظائف التي يملكها مستخدمون آخرون.

أمثلة

يضيف المثال التالي جميع قواعد البيانات الموجودة في خوادم London وNewYork إلى مجموعة الخوادم التي تحتفظ بمعلومات العميل. يجب عليك الاتصال بقاعدة بيانات الوظائف المحددة عند إنشاء عامل الوظيفة، في هذه الحالة ElasticJobs.

--Connect to the jobs database specified when creating the job agent

EXEC sp_delete_target_group_member
    @target_group_name = N'Servers Maintaining Customer Information',  
    @server_name = N'London.database.windows.net';  
GO

آراء الوظيفة

تتوفر العروض التالية في قاعدة بيانات الوظائف.

العرض الوصف
job_executions يظهر تاريخ تنفيذ الوظيفة.
الوظائف يظهر كل الوظائف.
job_versions يظهر جميع إصدارات الوظائف.
خطوات عمل يظهر كل الخطوات في الإصدار الحالي من كل وظيفة.
jobstep_versions يظهر كل الخطوات في جميع إصدارات كل وظيفة.
target_groups يظهر كل المجموعات المستهدفة.
target_group_members يظهر جميع أعضاء جميع المجموعات المستهدفة.

عرض job_executions

[jobs].[job_executions]

يظهر تاريخ تنفيذ الوظيفة.

اسم العمود نوع البيانات الوصف
job_execution_id Uniqueidentifier معرّف فريد لمثيل تنفيذ وظيفة.
job_name nvarchar(128) اسم الوظيفة.
job_id Uniqueidentifier معرّف فريد للوظيفة.
job_version Int إصدار الوظيفة (يتم تحديثه تلقائياً في كل مرة يتم فيها تعديل الوظيفة).
step_id Int معرّف فريد (لهذه الوظيفة) للخطوة. يشير NULL إلى أن هذا هو تنفيذ الوظيفة الأصل.
is_active بت يشير إلى ما إذا كانت المعلومات نشطة أو غير نشطة. 1 يشير إلى الوظائف النشطة، و0 يشير إلى غير نشطة.
دورة الحياة nvarchar(50) القيمة التي تشير إلى حالة الوظيفة: 'تم الإنشاء'، 'قيد التقدم'، 'فشل'، 'تم النجاح'، 'تم تخطيه'، 'تم التخطي بنجاح'
create_time التاريخ والوقت 2 (7) تاريخ ووقت إنشاء الوظيفة.
start_time التاريخ والوقت 2 (7) تاريخ ووقت بدء تنفيذ المهمة. NULL إذا لم يتم تنفيذ المهمة بعد.
end_time التاريخ والوقت 2 (7) تاريخ ووقت انتهاء تنفيذ المهمة. NULL إذا لم يتم تنفيذ المهمة بعد أو لم يكتمل تنفيذها بعد.
current_attempts Int عدد مرات إعادة محاولة الخطوة. ستكون وظيفة الوالدين 0، وستكون عمليات تنفيذ وظائف الأطفال 1 أو أكثر بناءً على نهج التنفيذ.
current_attempt_start_time التاريخ والوقت 2 (7) تاريخ ووقت بدء تنفيذ المهمة. يشير NULL إلى أن هذا هو تنفيذ الوظيفة الأصل.
last_message nvarchar(max) رسالة التاريخ الوظيفي أو الخطوة.
target_type nvarchar(128) نوع قاعدة البيانات الهدف أو مجموعة قواعد البيانات بما في ذلك جميع قواعد البيانات في الخادم، وجميع قواعد البيانات في تجمع مرن أو قاعدة بيانات. القيم الصالحة لـ target_type هي 'Sql Server' أو 'AZSqlElasticPool' أو 'Sql Database'. يشير NULL إلى أن هذا هو تنفيذ الوظيفة الأصل.
target_id Uniqueidentifier معرف فريد لعضو المجموعة المستهدفة. يشير NULL إلى أن هذا هو تنفيذ الوظيفة الأصل.
target_group_name nvarchar(128) اسم المجموعة المستهدفة. يشير NULL إلى أن هذا هو تنفيذ الوظيفة الأصل.
target_server_name nvarchar(256) اسم الخادم الموجود في المجموعة المستهدفة. يتم تحديده فقط إذا كان target_type هو "SqlServer". يشير NULL إلى أن هذا هو تنفيذ الوظيفة الأصل.
target_database_name nvarchar(128) اسم قاعدة البيانات الموجودة في المجموعة المستهدفة. يتم تحديده فقط عندما يكون target_type هو "SqlDatabase". يشير NULL إلى أن هذا هو تنفيذ الوظيفة الأصل.

عرض الوظائف

[وظائف]. [وظائف]

يظهر كل الوظائف.

اسم العمود نوع البيانات الوصف
job_name nvarchar(128) اسم الوظيفة.
job_id Uniqueidentifier معرّف فريد للوظيفة.
job_version Int إصدار الوظيفة (يتم تحديثه تلقائياً في كل مرة يتم فيها تعديل الوظيفة).
الوصف nvarchar(512) وصف الوظيفة. بت ممكّن: يشير إلى ما إذا كانت الوظيفة ممكّنة أو معطلة. يشير 1 إلى الوظائف الممكّنة، ويشير 0 إلى الوظائف المعطلة.
schedule_interval_type nvarchar(50) القيمة التي تشير إلى وقت تنفيذ المهمة: 'مرة واحدة'، 'دقائق'، 'ساعات'، 'أيام'، 'أسابيع'، 'شهور'
schedule_interval_count Int عدد فترات نوع Schedule_interval التي ستحدث بين كل تنفيذ للمهمة.
schedule_start_time التاريخ والوقت 2 (7) تاريخ ووقت بدء تنفيذ الوظيفة آخر مرة.
schedule_end_time التاريخ والوقت 2 (7) تاريخ ووقت تنفيذ المهمة الأخيرة.

عرض job_versions

[وظائف]. [إصدارات_وظيفة]

يظهر جميع إصدارات الوظائف.

اسم العمود نوع البيانات الوصف
job_name nvarchar(128) اسم الوظيفة.
job_id Uniqueidentifier معرّف فريد للوظيفة.
job_version Int إصدار الوظيفة (يتم تحديثه تلقائياً في كل مرة يتم فيها تعديل الوظيفة).

عرض خطوات العمل

[وظائف]. [خطوات عمل]

يظهر كل الخطوات في الإصدار الحالي من كل وظيفة.

اسم العمود نوع البيانات الوصف
job_name nvarchar(128) اسم الوظيفة.
job_id Uniqueidentifier معرّف فريد للوظيفة.
job_version Int إصدار الوظيفة (يتم تحديثه تلقائياً في كل مرة يتم فيها تعديل الوظيفة).
step_id Int معرّف فريد (لهذه الوظيفة) للخطوة.
step_name nvarchar(128) اسم فريد (لهذه الوظيفة) للخطوة.
command_type nvarchar(50) نوع الأمر المراد تنفيذه في خطوة الوظيفة. بالنسبة لـ v1، يجب أن تكون القيمة مساوية لـ "TSql" وتكون افتراضية.
command_source nvarchar(50) موقع الأمر. بالنسبة للإصدار 1، "Inline" هي القيمة الافتراضية والمقبولة فقط.
الأمر nvarchar(max) الأوامر المراد تنفيذها بواسطة الوظائف المرنة من خلال command_type.
credential_name nvarchar(128) اسم بيانات الاعتماد المحددة في نطاق قاعدة البيانات والمستخدمة لتنفيذ المهمة.
target_group_name nvarchar(128) اسم المجموعة المستهدفة.
target_group_id Uniqueidentifier معرف فريد للمجموعة المستهدفة.
initial_retry_interval_seconds Int التأخير قبل محاولة إعادة المحاولة الأولى. القيمة الافتراضية هي 1.
maximum_retry_interval_seconds Int الحد الأقصى للتأخير بين محاولات إعادة المحاولة. إذا زاد التأخير بين عمليات إعادة المحاولة عن تلك القيمة، فسيتم توجهها إلى تلك القيمة بدلاً من ذلك. القيمة الافتراضية هي 120.
retry_interval_backoff_multiplier فعلي المضاعف الذي سيتم تطبيقه على تأخير إعادة المحاولة إذا فشلت محاولات تنفيذ خطوة مهمة متعددة. القيمة الافتراضية هي 2.0.
retry_attempts Int عدد محاولات إعادة المحاولة لاستخدامها في حالة فشل تلك الخطوة. الإعداد الافتراضي هو 10، والذي يشير إلى عدم وجود محاولات لإعادة المحاولة.
step_timeout_seconds Int مقدار الوقت بالدقائق بين محاولات إعادة المحاولة. الافتراضي هو 0، ما يشير إلى فاصل زمني مدته 0 دقيقة.
نوع الإخراج nvarchar(11) موقع الأمر. في المعاينة الحالية، "Inline" هي القيمة الافتراضية والمقبولة فقط.
output_credential_name nvarchar(128) اسم بيانات الاعتماد التي سيتم استخدامها للاتصال بالخادم الوجهة لتخزين مجموعة النتائج.
output_subscription_id Uniqueidentifier المعرف الفريد لاشتراك الخادم\قاعدة البيانات الوجهة للنتائج المحددة من تنفيذ الاستعلام.
output_resource_group_name nvarchar(128) اسم مجموعة الموارد حيث يوجد الخادم الوجهة.
output_server_name nvarchar(256) اسم الخادم الوجهة لمجموعة النتائج.
output_database_name nvarchar(128) اسم قاعدة البيانات الوجهة لمجموعة النتائج.
output_schema_name nvarchar(max) اسم مخطط الوجهة. افتراضيات إلى dbo، إذا لم يتم تحديدها.
output_table_name nvarchar(max) اسم الجدول لتخزين مجموعة النتائج من نتائج الاستعلام. سيتم إنشاء الجدول تلقائياً بناءً على مخطط مجموعة النتائج إذا لم يكن موجوداً بالفعل. يجب أن يتطابق المخطط مع مخطط مجموعة النتائج.
max_parallelism Int الحد الأقصى لعدد قواعد البيانات لكل تجمع مرن سيتم تشغيل خطوة الوظيفة عليه في كل مرة. الافتراضي هو NULL، ما يعني عدم وجود حد.

عرض jobstep_versions

[jobs].[jobstep_versions]

يظهر كل الخطوات في جميع إصدارات كل وظيفة. المخطط مماثل لـ خطوات العمل.

عرض target_groups

[jobs].[target_groups]

يسرد جميع الفئات المستهدفة.

اسم العمود نوع البيانات الوصف
target_group_name nvarchar(128) اسم المجموعة المستهدفة، مجموعة قواعد البيانات.
target_group_id Uniqueidentifier معرف فريد للمجموعة المستهدفة.

عرض target_group_members

[jobs].[target_group_members]

يظهر جميع أعضاء جميع المجموعات المستهدفة.

اسم العمود نوع البيانات الوصف
target_group_name nvarchar(128 اسم المجموعة المستهدفة، مجموعة قواعد البيانات.
target_group_id Uniqueidentifier معرف فريد للمجموعة المستهدفة.
membership_type Int يحدد ما إذا كان عضو المجموعة المستهدفة مدرجاً أو مستبعداً في المجموعة المستهدفة. القيم الصالحة لـ target_group_name هي "تضمين" أو "استبعاد".
target_type nvarchar(128) نوع قاعدة البيانات الهدف أو مجموعة قواعد البيانات بما في ذلك جميع قواعد البيانات في الخادم، وجميع قواعد البيانات في تجمع مرن أو قاعدة بيانات. القيم الصالحة لـ target_type هي 'SqlServer' أو 'SqlElasticPool' أو 'SqlDatabase' أو 'SqlShardMap'.
target_id Uniqueidentifier معرف فريد لعضو المجموعة المستهدفة.
refresh_credential_name nvarchar(128) اسم بيانات الاعتماد المحددة في نطاق قاعدة البيانات والمستخدمة للاتصال بعضو المجموعة المستهدفة.
subscription_id Uniqueidentifier معرف فريد للاشتراك.
resource_group_name nvarchar(128) اسم مجموعة الموارد التي يقيم فيها عضو المجموعة المستهدفة.
اسم الخادم nvarchar(128) اسم الخادم الموجود في المجموعة المستهدفة. يتم تحديده فقط إذا كان target_type هو "SqlServer".
database_name nvarchar(128) اسم قاعدة البيانات الموجودة في المجموعة المستهدفة. يتم تحديده فقط عندما يكون target_type هو "SqlDatabase".
elastic_pool_name nvarchar(128) اسم التجمع المرن الموجود في المجموعة المستهدفة. يتم تحديده فقط عندما يكون target_type هو "SqlElasticPool".
shard_map_name nvarchar(128) اسم خرائط الأجزاء الموجودة في المجموعة المستهدفة. يتم تحديده فقط عندما يكون target_type هو "SqlShardMap".

الموارد

الخطوات التالية