我在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新手,有什么想法吗?
答案 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");