zoukankan      html  css  js  c++  java
  • SSIS-SqlTask控件使用

    使用SQL TASK控件:SQL控件如果使用到返回值,也就是说使用到了结果集,请参考:SSIS结果集使用;需要注意的是,结果集是"完整结果集"时,需要使用Foreach控件。

    补充知识: EXECUTION_ID:是SSIS包每次执行的唯一标识; PACKAGE_NAME:是SSIS包的名称; MACHINE_NAME: 是机器名称;这些参数在SSIS包中的系统参数可查!

    示例1:往目标数据库中插入数据,数据源来自SSIS包本身。

    1、建立目标数据库:T_Logs

    create table T_Logs
    (
      ID INT PRIMARY KEY IDENTITY(1,1),
      EXECUTION_ID NVARCHAR(255),
      PACKAGE_NAME NVARCHAR(255),
      MACHINE_NAME NVARCHAR(255),
      START_TIME DATETIME NULL,
      FINISH_TIME DATETIME NULL,
      EXECUTION_STATUS_ID  INT
    )

     2、使用SSIS中SQL TASK控件插入数据,连接数据源,构建SQL语句,INSERT INTO T_Logs VALUES(?,?,?,GETDATE(),NULL,1),注意,“?”这种占位符的形式只适用于SQLSERVER.

     3、运行查看结果:

    示例2:使用SQL TASK执行存储过程

    1、准备执行的存储过程:

    CREATE PROCEDURE PRO_TLogs
    @EXECUTION_ID NVARCHAR(255),
    @PACKAGE_NAME NVARCHAR(255),
    @MACHINE_NAME NVARCHAR(255),
    @ID INT OUTPUT     
    AS
    BEGIN    
        SET NOCOUNT ON;
        INSERT INTO T_Logs VALUES(@EXECUTION_ID,@PACKAGE_NAME,@MACHINE_NAME,GETDATE(),NULL,2)
        --@@IDENTITY 是SQLSERVER中内置的参数,代表得到上一次插入记录时自动产生的ID
    SELECT @ID=@@IDENTITY RETURN 100 END GO


    --以上存储过程如果手动执行,就要使用SQL脚本
    DECLARE @IDOUT INT
    DECLARE @RETURN_VALUE INT

    EXEC @RETURN_VALUE= PRO_TLogs @EXECUTION_ID='002', @PACKAGE_NAME='HELLO', @MACHINE_NAME='ABO', @ID=@IDOUT OUTPUT
    SELECT @IDOUT AS '自增长ID',@RETURN_VALUE AS '返回值'
    --执行结果:

    2、使用SSIS中SQL TASK控件执行存储过程

       2.1 构建SQL语句:

        2.2 由于参数@RETURN_VALUE和@IDOUT并不是系统参数,所以我们要自己创建两个USER变量

     

       2.3 执行包查看结果:

        2.4:扩展,使用脚本任务接受返回值:


     

    疑问?这里请教大神? 示例1和实例2,读者应该注意了,参数名称的设置不同,一个可以任意设置(包执行无误),一个则不可以(如果任意取名,则包执行失败)?望大神Z指点迷津!!!--->请留言!

  • 相关阅读:
    Tensorflow基础教程11:常用模块 tf.data :数据集的构建与预处理
    Tensorflow基础教程10:常用模块 TensorBoard:训练过程可视化
    Tensorflow基础教程9:常用模块 tf.train.Checkpoint 之变量的保存与恢复
    Tensorflow基础教程8:自定义层、损失函数和评估指标
    OC原理之多线程中的锁(一)
    OC原理之多线程(二)
    OC原理之多线程(一)
    OC原理之RunLoop的运行逻辑
    OC原理RunLoop(一)
    前端模块化:CommonJS,AMD,CMD,ES6
  • 原文地址:https://www.cnblogs.com/java-oracle/p/6414411.html
Copyright © 2011-2022 走看看