datax 写数据到mysql ,mysql 字段类型为 datetime时

分析:

      1、  当 mysql中字段为datetime类型时,datax官网查到 mysqlwriter的类型转换。

datax 写数据到mysql ,mysql 字段类型为 datetime时_第1张图片

 可以看出 datax json需要设置为 date 类型的。

2、然后去 看下 hivereader ,看下当 datax json 为 date 类型时,hive中的字段需要设置什么类型。

datax 写数据到mysql ,mysql 字段类型为 datetime时_第2张图片

可以看出 当 datax 为 date类型时,hive中有两种类型可以选择,若 hive 中为 date ,则字段中只含有日期,没有时间。所以我们现在 timestamp类型的。timestamp类型的可以由 string 类型的直接转化。 详情看如下测试。 

测试:

        1、创建hive中的表

hive> show create table test_feng;

OK

CREATE TABLE `test_feng`(

        `id` int,

`datetest` timestamp)

        2、向表中插入数据

hive> insert into test_feng(id,datetest)values(2,'2022-03-16 00:09:09'),(3,'2022-02-20');

hive> select * from test_feng;

        2 2022-03-16 00:09:09

        3 2022-02-20 00:00:00

        3、datax json格式
                     

  "column": [

                            {

                                "index": 0,

                                "type": "long"

                            },

                            {

                                "index": 1,

                                "type": "date"

                            }
                ]

        4、mysql 查看

        datax 写数据到mysql ,mysql 字段类型为 datetime时_第3张图片

你可能感兴趣的:(datax,hive,hadoop,mysql)