mysql下可以通过下面的语句创建文件 SELECT * INTO OUTFILE 'c:/test2.txt' FROM mysql.user;
有什么方法可以在创建之后删除test2.txt这个文件么?
使用情景:远程连接这些sql语句,没有远程系统的系统账号(即不能通过远程登录删除文件)
因为如果不删除,下次继续执行这个语句就会出错了

解决方案 »

  1.   

    没有其它折中方案么,允许我继续运行SELECT * INTO OUTFILE 'c:/test2.txt' FROM mysql.user;
      

  2.   

    在BAT中判断是否存在此文件,存在则删除,否则直接生成文件
      

  3.   

    sql能执行BAT文件么?印象中好像不行
      

  4.   

    mssql可以通过xp_cmdshell,mysql下有类似的东西么?
      

  5.   

    那没办法了,文件目前只能通过操作系统命令删除。
    一般不推荐把数据INTO到服务器,如果需要导出,更常见的方法是 mysql -e "SELECT ..." > file_name 生成到本地文件。
      

  6.   

    在系统中运行BAT,没有类似xp_cmdshell
      

  7.   

    @wwwwb,@ACMAIN_CHM
    多谢,问题解决了,其实只是想判断当前用户是否具有存取文件的权限
    这样做倒显得麻烦了
    可以直接判断user表 select user from mysql.user WHERE File_priv='Y';结果集不为空说明有用户具有文件存取权限,不过是不是当前用户就需要进一步比较了。
    多谢二位!