我正在尝试使用csvsql构建一个表。
当我使用命令时:
ApplicationContext context = ... ;
FXMLLoader loader = new FXMLLoader(getClass().getResource(...));
loader.setControllerFactory(context::getBean);
我收到错误:
(在表格' blabla',列' xyz'):VARCHAR需要方言mysql上的长度
然后我尝试构建数据库模式并使用--db-schema标志强制它,
db-schema格式为:
csvsql --db mysql://user:password@localhost:3306/database_name --table table_name file.csv
但我仍然得到同样的错误。
db-schema的完整命令是:
CREATE TABLE table_name (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`x` varchar(29) DEFAULT NULL,
`y` int(10) NOT NULL DEFAULT '0',
`z` BOOL NOT NULL,
PRIMARY KEY (`id`),
KEY `indexed` (`indexed`)
);
我已阅读过csvkit手册,但我不知道自己做错了什么。
此命令应该打印转换结果吗?
有人可以帮忙吗?
谢谢。
答案 0 :(得分:0)
好吧,在github中找到了解决方案。
https://github.com/wireservice/csvkit/issues/758#issue-201924611
从github更新后,不再创建错误和表格。