今天用powerquery连接公司数据库,连接正常,但查询的数据都为空,同样的sql语句,用navicat都能查出来,真是神奇。
后来不断的尝试改变查询条件,发现把where语句中涉及中文值的内容都删掉,就可以查到数据,因此判断是powerquery对中文的支持出了问题。但是以前没碰到过这种问题啊。
于是把以前的pq模板文件打开看了下,发现查询语句果然有变化。
今天创建的查询语句
= MySQL.Database("xxx", "xxx", [ReturnSingleDatabase=true, Query="SELECT * FROM tmall_sycm_shopsource where source_type='无线端' and statistical_time = '2022-04-11' ;"])
以前创建的查询语句
= MySQL.Database("xxx", "xxx", [Encoding=TextEncoding.Utf8,ReturnSingleDatabase=true, Query="SELECT * FROM tmall_sycm_shopsource where source_type='无线端' and statistical_time = '2022-04-11' ;"])
不知道为啥,现在创建数据库查询链接,它不会自动添加encoding语句了,正是这个差别,导致了对中文值的不兼容,把这段代码加上去,又可以正常查询了。