为什么我得到 "ERROR 1049 (42000): Unknown database"?

Why am I getting "ERROR 1049 (42000): Unknown database"?

这个 post 刚刚在一秒钟前关闭,因为显然不够专注。我不确定如何更具体?我已经阐明了上下文、出错的代码和错误语句。我还应该添加什么?如果我做错了什么,请发表评论,以便我从错误中吸取教训。


我运行这个代码:

"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe" -uroot -proot belgarath_test < bets_baseline.sql

来自这个目录:

C:\Users\Philip\OneDrive\Betting\Capra\Tennis\polgara\tests\mysql>

然而,试图运行这行代码:

subprocess.run([r'C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe', '-uroot', '-proot', 'belgarath_test < bets_baseline.sql'], cwd=r'C:\Users\Philip\OneDrive\Betting\Capra\Tennis\polgara\tests\mysql')

出现此错误:

ERROR 1049 (42000): Unknown database 'belgarath_test < bets_baseline.sql'

使用 subprocess.runstdin 参数,例如:

f = open(r"C:\Users\Philip\OneDrive\Betting\Capra\Tennis\polgara\tests\mysql\bets_baseline.sql", "r")
subprocess.run([r'C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe',
                '-uroot', '-proot', 'belgarath_test'],
cwd=r'C:\Users\Philip\OneDrive\Betting\Capra\Tennis\polgara\tests\mysql',
stdin = f)