表输出步骤常被用于将转换中的行集从内存持久化到数据库,对转换而言是行集被拿出去的感觉,故名为输出。步骤配置信息如图1所示。

图1 :表输出插件整体信息

下文依次解释各配置项的含义:1、转换步骤名称:步骤的名称,在单一的转换中,名称必须唯一。2、数据库连接:目标数据源的JDBC连接,右侧第一个“编辑”可以对数据库连接信息进行编辑;第二个“新建”按钮可以新建数据库连接;第三个“向导”按钮可以根据指引分步去建立数据库连接。3、目标模式:行集写入数据的表的 Schema的名称。可以点击右侧的“浏览”按钮,进行选择。4、目标表:行集写入数据的表名,可以点击右侧的“浏览”按钮,进行选择。如果激活了表分区(控件9),那么这里只是决定目标表的前缀。5、提交记录数量:批处理记录数量限制(注意必须填整数),设其值为n。如果n<0,那么插入后将不提交事务。如果n等于0,Kettle将自动把n设置为最大整数(值为2147483647);如果n>0,那么Kettle将判断是否可以采用批处理模式。如果可以,那么将采用JDBC批量处理的方式,每隔n行执行一次批处理、提交事务、清空批处理;如果不支持批处理,那么将逐行执行insert语句,并每隔n行提交一次事务。批处理模式性能更高,但需要多个条件同时满足:数据库支持批处理、不需要获取返回的主键字段值、没有在转换属性中激活使用唯一连接(转换/属性/杂项/使用唯一连接)。例如图1中设置为100,那么Kettle将在100行、200行、300行 ......时提交事务,到底提交多少次由输入行集行数决定。6、裁剪表:在插入数据之前清除目标表数据。注意这里采用的truncate而不是delete,用户需明白二者之间的区别。7、忽略插入错误:忽略插入时发生的异常。如果启用批量插入(第13个控件),则此功能不可用。此功能需谨慎使用,虽然错误日志能够记录20个以内的错误详情,但数据库的插入异常应当重视。8、指定数据库字段:勾选之后,才能设置数据库字段与行集中的流字段建立对应关系。具体操作是在下方数据库字段标签页中通过点击“获取字段”按钮获取上一步输出的字段;也可以通过点击“输入字段映射”按钮自定义对应字段;其中的表字段指的是所填写目标表的字段,流字段是指转换中输入行集输出的字段(如图2)。

图2 数据库字段标签页信息9、表分区数据:激活时可以启用逻辑分区,也就是某个字段的值决定该行的存储目标表。此控件必须与第10、11、12结合使用。假设第4个控件填入目标表为t,第10个控件选择字段为c。

如果激活了每个月分区(控件11),那么将如果行的c字段月份值为202001,则该行存入表t_202001;如果行的c字段月份值为202002,则该行存入表t_202002......

如果激活了每个天分区(控件12),那么将如果行的c字段日期值为20200101,则该行存入表t_20200101;如果行的c字段日期值为20200102,则该行存入表t_20200102......

10、分区字段:在下拉框中选择想要分区的字段。因为Kettle只支持按照月份或者天分区,所以该字段必须为日期类型。11、每个月分区数据:选择之后,以时间月为单位分区数据。12、每天分区数据:选择之后,以时间天为单位分区数据。13、使用批量插入:激活批量插入。激活条件下,性能更高。14、表名定义在一个字段里?:如果激活,那么每一行数据插入的表名称由此字段值决定。这是一种灵活性更大的分区功能,避免上述只能支持按月、按天分区的局限性。所以本控件激活后,第10、11、12三个控件禁止选择。前提就是需要用户在表输出前,通过业务逻辑控制好需要写入的表名,并存入行集中的某个流字段中。15、返回一个自动产生的关键字:往表中插入行时,是否返回主键值。多数关系数据库都支持自增长字段,这些字段的值在插入数据库记录后,自动产生并增长。常见表设计均会采用这种逻辑主键。如果需要在插入数据库记录后,返回这个主键值以供后续处理,那么可以激活本控件。16、自动产生的关键字的字段名称:指定包含关键字的输出字段的字段名称。该字段将包含每一行插入后产生的主键值。所以必须激活第15个控件,此控件方可使用。17、最下方的“SQL”按钮:根据表字段设置生成自动创建输出表的 SQL脚本。确认脚本无误后,可以点击执行按钮,更新数据库表。

内部供稿 CCSAII037

sql输出带颜色的字段_表输出步骤详解相关推荐

  1. sql输出带颜色的字段_带你走进MySQL数据库(MySQL入门详细总结一)

    导读:关于MySQL用三篇文章带你进入MySQL的世界. 文章目录 1.MySQL 2.MySQL的使用 3.MySQL概述 4.导入数据 5.sql语句 1.查询 2.排序(升序,降序) 3.分组函 ...

  2. ios php 表单提交图片上传,axios发送post请求提交图片表单步骤详解

    这次给大家带来axios发送post请求提交图片表单步骤详解,axios发送post请求提交图片表单的注意事项有哪些,下面就是实战案例,一起来看一下. DOME 接口const userUploadA ...

  3. kettle 表输入 显示重复_表输入插件详解

    表输入步骤用于将数据源的数据加载到Kettle转换中的行集,可以说是数据从持久化到内存的一种加载变换,故名为输入.加载内部过程,就是通过JDBC连接到数据源执行SQL语句,将返回结果解析为行集,传递给 ...

  4. Python基本语法_输入/输出语句详解

    目录 目录 前言 输入 raw_input input raw_input 和 input 的区别 输出 print print 基本格式化输出 print复杂格式化输出 flags标志位 width ...

  5. matlab相关系数影像匹配_双目立体匹配步骤详解

    作者:李迎松

  6. python 立体匹配_双目立体匹配步骤详解

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源: https://blog.csdn.net/rs_lys/ ...

  7. 泛微oa明细表添加按钮_泛微OA 新增能:表单建模详解.doc

    泛微OA 新增能:表单建模详解 Weaver Software中国上海耀华支路39弄9号(通耀路济明路路口) Weaver Software 中国上海耀华支路39弄9号(通耀路济明路路口) 邮政编码: ...

  8. php mysql修改命令_PHP编程:mysql alter table命令修改表结构实例详解

    <PHP编程:mysql alter table命令修改表结构实例详解>要点: 本文介绍了PHP编程:mysql alter table命令修改表结构实例详解,希望对您有用.如果有疑问,可 ...

  9. mysql 创建删除表_mysql创建删除表的实例详解

    表的创建命令需要: 表的名称 字段名称 定义每个字段(类型.长度等) 语法 下面是通用的SQL语法用来创建MySQL表: CREATE TABLE table_name (column_name ...

最新文章

  1. Razor:从aspx到cshtml常见错误及正确书写方法
  2. Ceph BlueFS
  3. 二十、MySQL之用户权限管理(用户管理、权限管理、忘记root密码的解决方案)
  4. HTML DOM教程 19-HTML DOM Button 对象
  5. Java JDBC------------------ODBC(SQLServer)链接
  6. org.hibernate.QueryException: could not resolve property
  7. ComponentArt Web.UI控件的bug及解决办法
  8. linux 用用监听器,Linux/Unix shell 监控Oracle监听器(monitor listener)
  9. redis详解_java 从零开始手写 redis(14)redis渐进式rehash详解
  10. 《Java语言程序设计》(基础篇原书第10版)第十章复习题答案
  11. 商品分类无限层级递归
  12. 白帽子讲web安全思维导图
  13. 小米--万物互联实现原理
  14. 后端开发常用工具指令
  15. AEG POWER可控硅工业充电机RCS
  16. 华为路由器:清除配置
  17. android 短信验证码自动填写的二种方法
  18. 服务注册中心之Eureka简介及原理
  19. Android 实现微信语音聊天
  20. 震惊!3小时快速掌握使用Mybatis

热门文章

  1. C++类对象在内存中的布局
  2. otsu阈值分割算法原理_大津二值化算法OTSU的理解
  3. [云炬创业基础笔记]第二章创业者测试23
  4. 如何使用python批量压缩图片_Python实现批量压缩图片
  5. VTK修炼之道45:图形进阶_vtkPolyData属性数据
  6. 获取dbgrid的行索引
  7. 通过崩溃地址找错误行数之Delphi版
  8. THttprio连接WebService的内存泄漏问题
  9. 判断事件源的另一方法
  10. linux系统程序设计