【问题标题】:MySql OUTFILE is not working in rails 3MySql OUTFILE 在 Rails 3 中不起作用
【发布时间】:2013-09-25 09:55:00
【问题描述】:

在我的 Rails 操作之一中,我想使用 MySql OUTFILE 从表中创建一个 csv 文件。

path = "#{Rails.root}/public/outfile.csv"
query_string = "SELECT * INTO OUTFILE '#{path}' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' FROM temp_csv_186;"
ActiveRecord::Base.connection.execute(query_string)

但每次都显示错误。

Mysql2::Error: Can't create/write to file '/home/user/Projects/Application/public/outfile.csv' (Errcode: 13): SELECT * INTO OUTFILE '/home/user/Projects/Application/public/outfile.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' FROM temp_csv_186;

【问题讨论】:

    标签: mysql ruby-on-rails ruby-on-rails-3


    【解决方案1】:

    运行 Mysql 的用户是否获得了 /home/user/Projects/Application/public/ 的写入权限?

    【讨论】:

    • 您是否已授予 MySQL 用户 FILE 权限(CREATE USER MyDBconnecter...with FILE perms)和/或确保他们能够独立于 Rails 创建文件?
    • @SabyasachiGhosh 我认为您不能公开创建文件,您应该将文件位置/名称指定为“/tmp/filename.csv”
    猜你喜欢
    • 1970-01-01
    • 2012-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多