我想用批处理文件进行一些SQL操作,但它不起作用。 以下是批处理文件的内容。我不明白我做错了什么..
c:\wamp\bin\mysql\mysql5.6.12\bin\mysql.exe -h localhost --user=root --password=mariette -e connect quizz -e INSERT INTO `quizz`.`jeu1` (
`index` ,
`user` ,
`password` ,
`score`
)
VALUES (
NULL , 'chris', 'qsdfg', '25'
);
pause
答案 0 :(得分:2)
不能在批处理文件中使用这样的新行。试试这个
set "query=INSERT INTO `quizz`.`jeu1` (`index` ,`user` ,`password` ,`score`) VALUES ( NULL , 'chris', 'qsdfg', '25');"
c:\wamp\bin\mysql\mysql5.6.12\bin\mysql.exe -h localhost --user=root --password=mariette -e connect quizz -e "%query%"
pause
或者像这样:
set query=INSERT INTO `quizz`.`jeu1` (`index` ,`user` ,`password` ,`score`)^
VALUES ^
( NULL , 'chris', 'qsdfg', '25');
c:\wamp\bin\mysql\mysql5.6.12\bin\mysql.exe -h localhost --user=root --password=mariette -e connect quizz -e "%query%"
pause
此处使用^
转义新行以获得更易读的代码。不确定查询是否正确。
答案 1 :(得分:1)
您最好将SQL语法加入单个SQL文件中,其行为如下:
c:\wamp\bin\mysql\mysql5.6.12\bin\mysql.exe -hlocalhost -uroot -pmariette DATABASE < /path/to/dump.sql
此处/path/to/dump.sql
表示应包含SQL命令的文件dump.sql
的绝对路径。 DATABASE
应替换为您正在操作的数据库的实际名称。
这样做更好,因为如果您想要更改SQL,则只需更改SQL文件,而不是命令本身。