将Windows路径传递给MySQL存储过程

时间:2014-04-25 22:45:24

标签: mysql windows path

我有一个基于这个问题的存储过程:How to store output of a stored procedure on to disk。出于某种原因,我无法使用Windows路径。总是得到文件写入错误。

关于如何传递参数的任何想法?

3 个答案:

答案 0 :(得分:2)

试过这个并且也有点挣扎。以下是我如何运作:

  1. 在MySQL将写入文件的文件夹中,确保为写访问权限指定了相应的权限。 如果安全性不是问题,那么执行此操作的一种强制方法是右键单击根文件夹,单击属性 - >安全选项卡,添加“所有人”并授予“完全控制”。但是,根据您执行此操作的位置和原因,您可能需要更加谨慎/有选择性......

  2. 使用以下内容运行存储过程:

    CALL export_dynamic('C:/dump/test1.txt');

    ...或...

    CALL export_dynamic('C:\\\\dump\\\\test2.txt');

    (假设C:\dump是使用上述权限设置文件的文件夹。)

  3. 注意:磁盘空间,防病毒等还有其他可能的问题,但我个人没有看到类似的东西(运行Microsoft Security Essentials)。

答案 1 :(得分:1)

文件名必须以文字字符串形式给出。在Windows上,将路径名中的反斜杠指定为正斜杠或双反斜杠。

从MySQL 5.1.6开始,character_set_filesystem系统变量控制文件名的解释。

答案 2 :(得分:0)

应该是权限问题...检查您尝试编写的文件夹的文件夹权限。授予所有人访问权限。右键单击文件夹 - >属性 - >权限 - >每个人 - >给予完全权利......现在运行脚本。