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

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

熟悉、梳理、总结下Microsoft SQL Server 2022关系数据库相关知识体系

3.欢迎批评指正,跪谢一键三连!

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镜像数据库

    bash 复制代码
    sudo docker pull mcr.microsoft.com/mssql/server:2022-latest
  • 1.2 查看镜像、启动容器并查看启动结果

    bash 复制代码
    docker images
    
    docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Y.sa123456" -p 1433:1433 --name mssql2022 -d mcr.microsoft.com/mssql/server:2022-latest
    
    docker ps -a
  • 1.3 容器运行结果

2.SQL Server数据库链接测试

  • 2.1 DBeaver连接信息配置

  • 2.2 SQL 建表语句测试

    sql 复制代码
    -- 创建数据库并指定默认字符集
    create database Youli collate chinese_prc_ci_as;
    
    -- 使用新建数据库
    use Youli;
    
    -- 创建测试表
    create table youli_testtable
    (
        id int primary key, -- 定义id为主键
        name nvarchar(50), -- 定义name为可变长度字符串字段,最大长度50
        birthday 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 数据库存储数据中文乱码问题处理

    • 通过修改数据库数据集编码解决。
    sql 复制代码
    -- 创建数据库并指定默认字符集
    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.其他参考

相关推荐
雨声不在4 小时前
私有 Docker Registry 排障实录:两个隐蔽的坑
docker·容器
Ai拆代码的曹操7 小时前
DaemonSet OnDelete 策略详解:为何 rollout restart 无效及正确迁移方案
docker·容器·kubernetes
瑞码空间7 小时前
Web应用的多端部署之道:浏览器 · Electron · Docker
前端·docker·electron·浏览器·web
badhope8 小时前
Docker镜像从2GB压到80MB——我被运维追着打了三天才学会的容器瘦身术
docker
x²+(y-√³x²)²=18 小时前
参数 `-v /usr/local/Ascend/add-ons:/usr/local/Ascend/add-ons:ro` 的作用
linux·docker
wangjing_05229 小时前
通过CentOS 7虚拟机的Docker服务部署Node-RED及气象数据显示界面搭建完整教程
linux·docker·centos
Patrick在香港19 小时前
Python Docker镜像从1.2GB到89MB:多阶段构建的完整优化实录
java·python·docker·信息可视化·容器·数据分析·ai编程
Lyra_Infra1 天前
Docker OCI Runtime 启动失败问题排查与解决
后端·docker·架构
wsad05321 天前
Docker 网络故障排查记:当 bridge 模式失效时,host 模式如何救场
运维·docker·容器