@echo off
echo.
echo Database backup echo *****************************
echo.
echo Today is %date%
echo Time is %time%
echo.
echo *****************************
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"cd C:\Program Files\MySQL\MySQL Server 5.0\bin
mysqldump -uroot -psuntoyo --add-drop-database -B winning > c:\3.sqlmysql -uroot -psuntoyo astar -e "Call deletesalesdata("%date%");"echo.echo MySQL database backup successful,please check it...echo.
echo.pause
备份后,Call deletesalesdata

解决方案 »

  1.   

    时间参数也可以放到sp里默认,这样就可以直接Call deletesalesdata()
      

  2.   

    你的重点是  mysqldump -uroot -psuntoyo --add-drop-database -B winning > c:\3.sql 呢?
    还是 Call deletesalesdata(date)呢?
      

  3.   


    不好意思,是我误解了,你的目的是先备份,然后调用存储过程处理deletesalesdata(Date)数据是吧!
      

  4.   

    呵呵,刚才吃饭去了,
    现在是mysql -uroot -psuntoyo astar -e "Call deletesalesdata("%date%");"有问题
    估计是时间没传进去。
      

  5.   


    改成 mysql -uroot -psuntoyo astar -e "Call deletesalesdata($date);"试试看。
      

  6.   


    可能是你备份的时候没有用 -r 参数,你mysqldump里面有drop database的语句吧。
      

  7.   

    mysqldump -uroot -psuntoyo --add-drop-database -B winning > c:\3.sql这个里面的--add-drop-database就表示 在mysql导入的时候是先drop database,然后create database的。
      

  8.   


     -R, --routines      Dump stored routines (functions and procedures).加上-R
      

  9.   

    两个问题:
    1. cd C:\Program Files\MySQL\MySQL Server 5.0\bin
    应该用:
    cd /d "C:\Program Files\MySQL\MySQL Server 5.0\bin"
    2. mysql -uroot -psuntoyo astar -e "Call deletesalesdata("%date%")
    应该用:
    mysql -uroot -psuntoyo astar -e "Call deletesalesdata("%Ymd%")
      

  10.   

    1、
    MYSQLDUMP -uroot --add-drop-database -B -E -R -p >r:\temp\123.TXT
    可备份SP
    2、
    mysql -uroot -psuntoyo astar -e "Call deletesalesdata("%Ymd%")
      

  11.   


    楼主已经mysql导入过了,所以现在的存储过程已经丢了,需要重新写或者有保留的procedure的sql文件,直接导入。
      

  12.   

    如果是这样的话,只有恢复备份了,备份的示例:
    echo off
    echo.
    echo MySQL数据库备份echo *****************************
    echo.
    echo 今天是 %date%
    echo 时间是 %time%
    echo.
    echo *****************************
    set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"md "D:\JDBC\%Ymd%""C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump" --opt -Q -uroot -pabc123 --default-character-set=latin1 test > "D:\JDBC\%Ymd%\test_bak.sql"echo.echo MySQL数据库备份完成,请进行检查echo.
    echo.pause
      

  13.   

    WWWWA,我现在把ASTAR数据库给删除了,但是还原不了
    cd C:\Program Files\MySQL\MySQL Server 5.0\bin
    mysql -uroot -psuntoyo astar< c:\astar201104081603.sql
      

  14.   

    重新建立ASTAR没有,提示什么 
      

  15.   

    我重新建立了一个ASTAR,然后用命令还原。
    一闪而过,提示还原成功,但是我用工具打开的时候,发现里面什么也没有。
      

  16.   

    astar201104081603.sql中的内容贴一点出来看看
      

  17.   

    当数据库里面有ASTAR时,备份和还原命令都可以。
    一旦删除掉ASTAR,就有问题。
      

  18.   

    在astar201104081603.sql加入
    CREATE DATABASE ASTAR
    USE ASTAR
    OR
    在备份时加-B参数