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

发布于:2024-05-06 ⋅ 阅读:(24) ⋅ 点赞:(0)

一直以来想写下基于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镜像数据库
    sudo docker pull mcr.microsoft.com/mssql/server:2022-latest
    
  • 1.2 查看镜像、启动容器并查看启动结果
    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 建表语句测试
    -- 创建数据库并指定默认字符集
    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 数据库存储数据中文乱码问题处理
    在这里插入图片描述
    • 通过修改数据库数据集编码解决。
    -- 创建数据库并指定默认字符集
    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.其他参考