Flink sql报错:Unknown identifier 'DATETIME'
Flink sql执行的时候报错了,提示:
创建sql的语句是:
Caused by: org.apache.calcite.sql.validate.SqlValidatorException: Unknown identifier 'DATETIME'
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.apache.calcite.runtime.Resources$ExInstWithCause.ex(Resources.java:505)
at org.apache.calcite.runtime.Resources$ExInst.ex(Resources.java:599)
... 108 more
创建sql的语句是:
CREATE TABLE source_township (
id int NOT NULL,
province STRING,
province_code STRING,
city STRING,
city_code STRING,
area STRING,
area_code STRING,
town STRING,
town_code STRING,
created_time DATETIME,
updated_time DATETIME,
PRIMARY KEY (`id`) NOT ENFORCED
)
WITH (
'connector' = 'mysql-cdc',
'hostname' = '192.168.31.218',
'port' = '33336',
'username' = 'root',
'password' = '123456',
'database-name' = 'test3',
'table-name' = 'township'
)
发布于:2年前 (2023-09-05) IP属地:四川省
1 个回答
这是因为flinksql中没有datatime这个数据类型,如果是数据导入的话,可以使用TIMESTAMP_LTZ类型,例如:
CREATE TABLE source_township (
id int NOT NULL,
province STRING,
province_code STRING,
city STRING,
city_code STRING,
area STRING,
area_code STRING,
town STRING,
town_code STRING,
created_time TIMESTAMP,
updated_time TIMESTAMP,
PRIMARY KEY (`id`) NOT ENFORCED
)
WITH (
'connector' = 'mysql-cdc',
'hostname' = '192.168.31.218',
'port' = '33336',
'username' = 'root',
'password' = '123456',
'database-name' = 'test3',
'table-name' = 'township'
);
发布于:2年前 (2023-09-05) IP属地:四川省
我来回答
您需要 登录 后回答此问题!