@echo off
::::::::::::::::::::::::::::::::::::
@set db=test
@set username=root
@set sqlpath=%CD%\test.sql
::::::::::::::::::::::::::::::::::::
C:
cd C:\xampp\mysql\binmysql -h localhost -u %username% %db% < %sqlpath%pause刚刚接触mysql,现在有个需求不能完成。
如上语句,我想在%sqlpath%后面跟上参数,并且test.sql里面能够接收参数,请问mysql的批处理命令是否有这种写法?
如果没有,哪位大神有相关经验给一个类似的解决方法。
主要是没有参数,如果遇到不同情况,就要写多个.sql文件来应付,比较麻烦,谢谢大神们了。

解决方案 »

  1.   

    mysql -h localhost -u %username% %db% < %sqlpath%这个是操作系统命令,支持参数的。
      

  2.   

    input.cmd :
    @echo off
    ::::::::::::::::::::::::::::::::::::
    @set db=test
    @set username=root
    @set sqlpath=%CD%\test.sql
    ::::::::::::::::::::::::::::::::::::
    C:
    cd C:\xampp\mysql\binmysql -h localhost -u %username% %db% < %sqlpath% @namepause
    get.sql:
    declare varchar(255) @name
    SELECT * FROM tbl_user WHERE user_name = @name
    就是想cmd调sql时候传给sql参数,然后sql接收到参数后能拿来做查询条件用~~
      

  3.   

    不能
    建议用语言生成
    mysql -uroot -p1234 mysql -e "call test('test')" >在SP TEST中设置变量接收值