pyflink下mysql数据更新操作

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

pyflink下mysql数据更新操作

咿咿呀呀
各位大佬好,想咨询几个问题:
1.pyflink sql中update操作是不是在1.10.0版本没有呢?
2.pyflink内置表类型Table是否可直观查看类内的数据项?
Reply | Threaded
Open this post in threaded view
|

Re: pyflink下mysql数据更新操作

Xingbo Huang
Hi, 小学生
1. 关于问题1,这个是支持的,你通过TableEnvrironment的sql_update就行
例如:
s_env = StreamExecutionEnvironment.get_execution_environment()
s_env.set_parallelism(1)
st_env = StreamTableEnvironment.create(s_env)

mysql_source_ddl = """
CREATE TABLE buybacksource (
 a VARCHAR,
 b VARCHAR,
 c VARCHAR,
 proctime AS PROCTIME()
) WITH (
 'connector.type' = 'jdbc',
 'connector.url' = 'jdbc:mysql://***/***',
 'connector.table' = '***',
 'connector.username' = '***',
 'connector.password' = '***',
 'connector.write.flush.interval' = '1s'
"""
st_env.sql_update(mysql_source_ddl)

2. 关于问题2, 你是想查看Table里的数据吗?这个和Java的Table一样,你要查看Table的数据,你得sink出来才能查看数据

Best,
Xingbo

小学生 <[hidden email]> 于2020年6月4日周四 下午4:53写道:

> 各位大佬好,想咨询几个问题:
> 1.pyflink sql中update操作是不是在1.10.0版本没有呢?
> 2.pyflink内置表类型Table是否可直观查看类内的数据项?
Reply | Threaded
Open this post in threaded view
|

Re: pyflink下mysql数据更新操作

咿咿呀呀
您好,第一个问题您说的这样我理解,但是我的问题是比如先前在mysql表已经有一条key=1,value=2的数据,但是接着我要按key=1时,value=3去覆盖掉key=1,value=2的数据,也就是mysql 命令中update table **&nbsp;SET value=3 WHERE key=1;
Reply | Threaded
Open this post in threaded view
|

Re: pyflink下mysql数据更新操作

Xingbo Huang
Hi, 小学生
我的理解是key如果是mysql主键的话,你正常sink进去,那条key=1,value=3的数据就会覆盖掉key=1,value=2的数据

Best,
Xingbo

小学生 <[hidden email]> 于2020年6月4日周四 下午6:05写道:

> 您好,第一个问题您说的这样我理解,但是我的问题是比如先前在mysql表已经有一条key=1,value=2的数据,但是接着我要按key=1时,value=3去覆盖掉key=1,value=2的数据,也就是mysql
> 命令中update table **&nbsp;SET value=3 WHERE key=1;