用mqsql插件迁移数据时,如何将mysql的datetime 类型转换成NANOTIMESTAMP类型

用mqsql插件迁移数据到已经创建好的dolphindb分区数据库中,单表上亿数量级的记录,如何将mysql的datetime 类型转换成NANOTIMESTAMP类型。采用loadex()方法迁移,schema已经修改分区表字段类型了,字段数量也对应上了。执行的时候还是报错,如下。怀疑是datetime无法自动转还成NANOTIMESTAMP类型导致的失败,有没有大佬指点一下。因为想要将mysql 合并到现有的 dolphindb数据库中,所以没有让插件创建新的数据库。


localhost:8848 Server response: 'loadEx(conn, db, "tick", ["datetime","symbol"], "dbtickdata", schema) => dst and src schema have different size'


请先 登录 后评论

最佳答案 2023-04-27 14:18

mysql的datetime类型默认转成DolphinDB的DATETIME类型,要进行转换,可在transform参数中转,例如



def replaceTable(mutable t){
	return t.replaceColumn!(`time,nanotimestamp(t[`time]))
}
t=mysql::loadEx(conn, db, "",`stockid, 'select  * from t ...',,,,replaceTable)    



请先 登录 后评论

其它 0 个回答