Linux Java mysql源命令未知数据库

时间:2018-07-17 09:08:15

标签: java mysql ubuntu-18.04

我在Ubuntu上使用Java连接mysql服务器

这是Java代码:

Runtime.getRuntime().exec("mysql -u user -ppass -e \"source filename "\"");

但是它总是给我这个错误

ERROR 1049 (42000): Unknown database 'filename'

它在Windows 10中工作,并通过在Ubuntu-18.04的终端中直接命令“ mysql -u user -ppass -e“ source filename”

我是Linux新手,有什么想法吗?

2 个答案:

答案 0 :(得分:1)

[1,10,24,32,44] 的此变体依赖于对命令进行标记化(因此在空格上进行分割),并且对于包含空格的非平凡的命令行字符串将失败。使用exec的替代形式,自己构建参数数组:

exec

答案 1 :(得分:0)

Runtime.exec("mysql db_name <"fource file_name");

例如:

Runtime.exec("mysql db_name </home/ferrakkem/download/tpch/queries/Q1.sql");

更多详细信息:check out this documentations