2012-05-12 61 views
0

您好我正在使用代码在batch文件中将sql文件添加到我的database。有用 。如何通过用户输入批处理文件在mysql连接中输入用户名,密码,db名称

我的代码

C: 
cd\xampp\mysql\bin 
mysql -u root -e "source C:\xampp\htdocs\internet_wk_1.7\db\master_db.sql" kani 

的情况是我想要获取用户输入的值user namepassworddatabase名称,而不是硬编码这些值。

目前我的用户名硬编码为root

我想要做这样的

用户应该得到一个消息

please enter your user name : 

当我做到了

please enter your password : 

please enter your database name : 

然后剧本喊话继续。如何做到这一点,请帮助。在此先感谢

回答

1

使用set/P选项:

 
@echo off 
set /p username=please enter your user name: 
set /P pwd=please enter your password: 
set /p dbname=please enter your database name: 

cd /d c:\xampp\mysql\bin 
mysql -u%username% -p%pwd% -e "source C:\xampp\htdocs\internet_wk_1.7\db\master_db.sql" %dbname% 

如果您在命令行窗口中输入help set你得到更多的细节。

+0

完美的工作,但只有一个问题,如果我没有密码,请输入您的数据库名称:,输入您的密码:再次询问。为什么是这样以及如何解决它 –

+0

@KanishkaPanamaldeniya:我不明白你的问题。如果您在提示时按回车键,变量将为空。 –

+0

@ a_horse_with_no_name,是的但如果我输入一个值,它会再次要求数据库名称后的密码 –

相关问题