【kettle003】kettle访问SQL Server数据库并处理数据至execl文件

一直以来想写下基于kettle的系列文章,作为较火的数据ETL工具,也是日常项目开发中常用的一款工具,最近刚好挤时间梳理、总结下这块儿的知识体系。
熟悉、梳理、总结下Microsoft SQL Server 2022关系数据库相关知识体系

  • kettle访问SQL Server数据库并处理数据至execl文件文章目录索引如下所示:
    在这里插入图片描述

1.环境搭建、配置

  • 1.0 实验环境信息
    • Windows 10
    • CentOS 7.1(虚拟机)
    • Docker version 26.0.2
    • Dbeaver
    • Kettle 8.2
    • Microsoft SQL Server 2022
  • 1.1 拉取SQL Server镜像数据库
    • 如果遇到拉取镜像很慢的问题,可以参考 https://kngines.blog.csdn.net/article/details/138142888
    sudo docker pull mcr.microsoft.com/mssql/server:2022-latest
    
  • 1.2 查看镜像、启动容器并查看启动结果
    docker imagesdocker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Y.sa123456" -p 1433:1433 --name mssql2022 -d mcr.microsoft.com/mssql/server:2022-latestdocker ps -a
    
  • 1.3 容器运行结果在这里插入图片描述

2.SQL Server数据库链接测试

  • 2.1 DBeaver连接信息配置
    在这里插入图片描述
  • 2.2 SQL 建表语句测试
    -- 创建数据库并指定默认字符集
    create database Youli collate chinese_prc_ci_as;-- 使用新建数据库
    use Youli;-- 创建测试表
    create table youli_testtable
    (id int primary key, -- 定义id为主键name nvarchar(50), -- 定义name为可变长度字符串字段,最大长度50birthday date -- 定义birthday为日期类型字段
    );-- 插入一些示例数据
    insert into youli_testtable (id, name, birthday) values (1, '张三', '1990-01-01');
    insert into youli_testtable (id, name, birthday) values (2, '李四', '1991-02-01');
    insert into youli_testtable (id, name, birthday) values (3, '王五', '1992-03-01');
    insert into youli_testtable (id, name, birthday) values (4, '张三', '1990-01-01');
    insert into youli_testtable (id, name, birthday) values (5, '李四', '1991-02-01');
    insert into youli_testtable (id, name, birthday) values (6, '王五', '1992-03-01');
    
  • 2.3 数据库存储数据中文乱码问题处理
    在这里插入图片描述
    • 通过修改数据库数据集编码解决。
    -- 创建数据库并指定默认字符集
    create database Youli collate chinese_prc_ci_as;
    -- 修改数据库字符集
    alter database Youli collate chinese_prc_ci_as;
    

3.kettle流程任务配置、效果验证

  • 3.1 数据表输入访问信息配置、测试
    在这里插入图片描述
    • 3.1.1 获取SQL查询语句详情选择(表,默认的是当前链接数据库下面的数据表,也可选择其他模式下的数据表)
      在这里插入图片描述
    • 3.1.2 配置好信息后,进行数据预览查看

在这里插入图片描述

  • 3.2 kettle任务流程测试执行结果
    在这里插入图片描述
    • 3.2.1 数据输出结果及详情
      在这里插入图片描述

4.其他参考

  • https://zhuanlan.zhihu.com/p/683823756

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/315026.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++ | 复合类型】结构体、共用体、枚举、引用

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 ⏰发布时间⏰: 本文未经允许…

图形化编程要怎么做

0. 简介 Scratch其实应该算得上最早做图形化编程的工程了。Scratch 是麻省理工学院的“终身幼儿园团队”在 2007 年 [5]发布的一种图形化编程工具,主要面对全球青少年开放,是图形化编程工具当中最广为人知的一种,所有人都可以在软件中创作自…

【python技术】使用akshare、pandas、mplfinance绘制红绿色K线图简单示例

python中的mplfinance库是基于matplotlib库开发的一个专门用于绘制股票数据的图表的第三方库,它提供了一系列函数和类,用于绘制各种类型的股票图表,包括K线图、成交量图和技术指标图等。 这里简单写个示例,我用的mac系统,字体采用STHeiti。…

docker部署的nacos2.2x开启鉴权功能

注意在2.2.0版本之后如果不开启鉴权,那么默认不需要登录就可以访问 所以我们需要手动开启鉴权,nacos启动好以后来到容器内部修改 docker exec -it nacos /bin/shvim conf/application.properties在第34行下面添加 nacos.core.auth.enabledtrue nacos.cor…

pytest-asyncio:协程异步测试案例

简介:pytest-asyncio是一个pytest插件。它便于测试使用异步库的代码。具体来说,pytest-asyncio提供了对作为测试函数的协同程序的支持。这允许用户在测试中等待代码。 历史攻略: asyncio并发访问websocket Python:协程 - 快速创…

数据结构——二叉树的顺序存储(堆)(C++实现)

数据结构——二叉树的顺序存储(堆)(C实现) 二叉树可以顺序存储的前提堆的定义堆的分类大根堆小根堆 整体结构把握两种调整算法向上调整算法递归版本 非递归版本向下调整算法非递归版本 向上调整算法和向下调整算法的比较 我们接着…

5、Flink事件时间之Watermark详解

1)生成 Watermark 1.Watermark 策略简介 为了使用事件时间语义,Flink 应用程序需要知道事件时间戳对应的字段,即数据流中的每个元素都需要拥有可分配的事件时间戳。 通过使用 TimestampAssigner API 从元素中的某个字段去访问/提取时间戳。…

STM32之串口中断接收丢失数据

五六年没搞STM32了,这个项目一切都挺顺利,万万没想到被串口接收中断恶心到了。遇到的问题很奇怪 HAL_UART_Receive_IT(&huart1, &rx_buffer[rx_index], LCD_UART_LEN); 这个代码中 LCD_UART_LEN1的时候,接收过来的数据,数…

CentOS 9 (stream) 安装 nginx

1.我们直接使用安装命令 dnf install nginx 2.安装完成后启动nginx服务 # 启动 systemctl start nginx # 设置开机自启动 systemctl enable nginx# 重启 systemctl restart nginx# 查看状态 systemctl status nginx# 停止服务 systemctl stop nginx 3.查看版本确认安装成功…

Taro引入echarts【兼容多端小程序(飞书/微信/支付宝小程序)】

近期接到公司新需求,开发飞书小程序,并且原型中含有大量的图表,本想使用飞书内置图表组件 —— chart-space,但官方表示已经停止维护了,无奈之下,只能另寻他路,于是乎,图表之王&…

Apollo 7周年大会:百度智能驾驶的展望与未来

本心、输入输出、结果 文章目录 Apollo 7周年大会:百度智能驾驶的展望与未来前言百度集团副总裁、智能驾驶事业群组总裁王云鹏发言 直播回放大会相关内容先了解 Apollo开放平台 9.0架构图 发布产品Apollo 定义自己对于智能化的认知百度集团副总裁 王云鹏…

Vue入门到关门之Vue介绍与使用

一、vue框架介绍 1、什么是Vue? Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与…

1、Flink DataStreamAPI 概述(上)

一、DataStream API 1、概述 1)Flink程序剖析 1.Flink程序组成 a)Flink程序基本组成 获取一个执行环境(execution environment);加载/创建初始数据;指定数据相关的转换;指定计算结果的存储…

图像处理的魔法师:Pillow 库探秘

文章目录 图像处理的魔法师:Pillow 库探秘第一部分:背景介绍第二部分:库是什么?第三部分:如何安装这个库?第四部分:库函数使用方法第五部分:场景应用第六部分:常见Bug及解…

字符串类型漏洞之updatexml函数盲注

UPDATEXML 是 MySQL 数据库中的一个函数,它用于对 XML 文档数据进行修改和查询。然而,当它被不当地使用或与恶意输入结合时,它可能成为 SQL 注入攻击的一部分,从而暴露敏感信息或导致其他安全漏洞。 在 SQL 注入攻击中&#xff0…

Prompt Engineering,提示工程

什么是提示工程? 提示工程也叫【指令工程】。 Prompt发送给大模型的指令。比如[讲个笑话]、[用Python编个贪吃蛇游戏]、[给男/女朋友写情书]等看起来简单,但上手简单精通难 [Propmpt]是AGI时代的[编程语言][Propmpt]是AGI时代的[软件工程][提示工程]是…

【Unity动画系统】详解Root Motion动画在Unity中的应用(一)

Root Motion动画与普通动画的区别 普通动画:动画文件里记录的是物体的绝对坐标和方向,在播放动画时,Unity会根据Animation中记录的值,直接修改游戏对象的坐标和方向,每一帧的坐标和方向都是通过插值计算得出来的&…

网工学习云计算HCIE感受如何?

作为一名网工,我经常会在各种网络论坛里查询搜索一些网络技术资料,以及跟论坛里的网友交流讨论平时在工作、学习中遇到的问题、故障,因此也经常能在论坛的首页看到誉天的宣传信息。机缘巧合之下关注了誉天的B站号,自从关注了誉天的…

李沐64_注意力机制——自学笔记

注意力机制 1.卷积、全连接和池化层都只考虑不随意线索 2.注意力机制则显示的考虑随意线索 (1)随意线索倍称之为查询(query) (2)每个输入是一个值value,和不随意线索key的对 (3)通过注意力池…

Python 面向对象——6.封装

本章学习链接如下: Python 面向对象——1.基本概念 Python 面向对象——2.类与对象实例属性补充解释,self的作用等 Python 面向对象——3.实例方法,类方法与静态方法 Python 面向对象——4.继承 Python 面向对象——5.多态 1. 封装的基…