Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm thế nào để bắt đầu công việc SQL Server từ một thủ tục được lưu trữ?

-- Create SQL Server Agent job start stored procedure with input parameter
CREATE PROC uspStartMyJob @MyJobName sysname
AS
DECLARE @ReturnCode tinyint -- 0 (success) or 1 (failure)
EXEC @ReturnCode=msdb.dbo.sp_start_job @[email protected];
RETURN (@ReturnCode)
GO

HOẶC không có tham số:

-- Create stored procedure to start SQL Server Agent job
CREATE PROC StartMyMonthlyInventoryJob
AS
EXEC msdb.dbo.sp_start_job N'Monthly Inventory Processing';
GO
-- Execute t-sql stored procedure
EXEC StartMyMonthlyInventoryJob

CHỈNH SỬA FYI:Bạn có thể sử dụng nó TRƯỚC để bắt đầu NẾU bạn không muốn bắt đầu công việc NẾU nó đang chạy hiện tại, hãy làm việc này trong chương trình đã lưu trữ của bạn:

-- Get run status of a job
-- version for SQL Server 2008 T-SQL - Running = 1 = currently executing
 -- use YOUR guid here
DECLARE @job_id uniqueidentifier = '5d00732-69E0-2937-8238-40F54CF36BB1' 
EXEC master.dbo.xp_sqlagent_enum_jobs 1, sa, @job_id


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chọn nhóm hàng phù hợp với tất cả các mục trong danh sách

  2. Tweet vui nhộn về cuộc đời của một DBA

  3. Vị trí thực của dữ liệu FILESTREAM

  4. Đăng nhập không thành công cho người dùng (Microsoft SQL Server, Lỗi:18456) SQL Server 2005

  5. Hiệu suất SQL Server IN so với EXISTS