job分流

2024-05-04 05:58
文章标签 job 分流

本文主要是介绍job分流,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

待調用的procedure
/****** Object:  StoredProcedure [dbo].[pro_job_test1]    Script Date: 2018/11/2 上午 11:27:58 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[pro_job_test1]
@v_flag nvarchar(16)
as
begin
WAITFOR DELAY '00:01';
insert into job_test2
select * from job_test1 where flag=@v_flag

end

 

 

創建job的procedure

USE [gs_ssis]
GO
/****** Object:  StoredProcedure [dbo].[pro_job_exec]    Script Date: 2018/11/2 上午 11:27:29 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


ALTER procedure [dbo].[pro_job_exec]
@jobname nvarchar(256),
@stepname nvarchar(256),
@execsql nvarchar(256)
as
begin

/****** Object:  Job [JOB_124_1]    Script Date: 2018/11/2 上午 10:46:38 ******/
BEGIN TRANSACTION
DECLARE @ReturnCode INT
SELECT @ReturnCode = 0
/****** Object:  JobCategory [[Uncategorized (Local)]]]    Script Date: 2018/11/2 上午 10:46:38 ******/
IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1)
BEGIN
EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

END

DECLARE @jobId BINARY(16)
EXEC @ReturnCode =  msdb.dbo.sp_add_job @job_name=@jobname,
        @enabled=1,
        @notify_level_eventlog=0,
        @notify_level_email=0,
        @notify_level_netsend=0,
        @notify_level_page=0,
        @delete_level=1,
        @description=N'沒有可用的描述。',
        @category_name=N'[Uncategorized (Local)]',
        @owner_login_name=N'xxxxx', @job_id = @jobId OUTPUT
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
/****** Object:  Step [JOB_124_1]    Script Date: 2018/11/2 上午 10:46:38 ******/
EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=@stepname,
        @step_id=1,
        @cmdexec_success_code=0,
        @on_success_action=1,
        @on_success_step_id=0,
        @on_fail_action=2,
        @on_fail_step_id=0,
        @retry_attempts=0,
        @retry_interval=0,
        @os_run_priority=0, @subsystem=N'TSQL',
        @command=@execsql,
        @database_name=N'gs_ssis',
        @flags=0
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
COMMIT TRANSACTION
EXEC msdb.dbo.sp_start_job @job_name=@jobname ---執行job
GOTO EndSave
QuitWithRollback:
    IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION
EndSave:
select 1
end

 

 

 

測試

exec [pro_job_exec] @jobname='job_1',@stepname='step_1',@execsql='exec pro_job_test1 @v_flag=''1'' '
exec [pro_job_exec] @jobname='job_2',@stepname='step_2',@execsql='exec pro_job_test1 @v_flag=''2'' '
exec [pro_job_exec] @jobname='job_3',@stepname='step_3',@execsql='exec pro_job_test1 @v_flag=''3'' '
exec [pro_job_exec] @jobname='job_4',@stepname='step_4',@execsql='exec pro_job_test1 @v_flag=''4'' '

 

 

 

 

 

 

这篇关于job分流的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/958456

相关文章

client-go删除job同时删除job关联的pod

问题描述 client-go使用以下方式删除job时,并不会把其关联的pod删除,从而导致这些pod成为了孤儿(orphan): err := clientSet.BatchV1().Jobs(namespace).Delete(name, &metav1.DeleteOptions{}) 在删除job的时候将job关联的pod也删除的方法: propagationPolicy := m

解析 flink sql 转化成flink job

文章目录 背景流程flink实例实现细节定义的规则定义的物理算子定义的flink exec node 背景 在很多计算引擎里,都会把sql 这种标准语言,转成计算引擎下底层实际的算子,因此理解此转换的流程对于理解整个过程非常重要 流程 flink实例 public class BatchExample {public static void main(String[

springbatch自学之路-04(job的创建与使用)

目录 1.使用start。。。next。。。的方式 2.使用from。。。on。。。to。。。的方式 1.使用start。。。next。。。的方式 直接上代码: 配置类: package com.springbatch._02new_job;import org.springframework.batch.core.Job;import org.springframework.b

XXL-JOB 分布式定时任务调度平台

文章目录 1、概述2、使用 1、概述 ​ 首先我们要知道什么是XXL-JOB? ​ 官方简介:XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用 ​ XXL-JOB的有点特性: ​ 1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手; ​ 2、动态:支持动态修

Oracle dblink、job 建立

1、dblink 创建 -- Create database link  --TestDblink : 表示dblink名字 --dbName :表示 远程数据库的用户 --dbPassword:表示 远程数据库的密码 --HOST : 表示远程数据库IP --PORT : 表示远程数据库端口 create public database link  TestDblink  connect to

Go-Job让你的任务调度不再繁琐|得物技术

一、背景 在选择任务调度平台时,团队遇到了一些实际的问题。现有的开源项目如XXL-Job、Elastic-Job,虽然功能强大,但主要是围绕Java设计,而我们团队主要使用Go语言进行开发。这使得我们在集成和使用这些工具时遇到了诸多不顺。经过深入的调研和讨论,决定开发一个适合Go语言的任务调度框架,以满足我们的特定业务需求。于是,Go-Job应运而生。 为了让大家有个全面的了解,接下来主要探讨它

springboot集成xxl-job个人笔记

配置springboot配置文件application.yml xxl:job:accessToken:admin:addresses: http://127.0.0.1:9998/xxl-job-adminexecutor:appname: ${spring.application.name}ip:port: 5000logpath: /data/applogs/xxl-job/jobhand

oracle job

1. 定义 Job是一个可以被调度以在特定时间或按一定频率自动执行的数据库对象。Job通常用于执行预定的后台任务,如数据清理、统计信息更新、备份操作、数据导入导出、报告生成等。这些任务可以是任何可以在数据库环境中执行的操作,最常见的形式是调用存储过程。DBMS_JOB包已经被DBMS_SCHEDULER包所取代。 Job的创建和管理主要通过Oracle的DBMS_JOB包来进行,该包提

kettle的job定时任务的一个小问题

kettle的job定时任务的一个小问题 思考,启动此job,做一个最简单,job实现表输入和表输出,但是实现表输入和表输出要花2个小时。那么这个job定时是如何执行的呢???第一种情况、job定时60分钟即1个小时。当job执行结束(即用了2个小时以后),再等待一个小时,再次执行此job的转换表输入和表输出。第二种情况、job执行了60分钟即1个小时,job重新启动,造成job的转换