加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

是否可以在Rails迁移中使用外部SQL文件?

发布时间:2020-12-12 06:55:14 所属栏目:MsSql教程 来源:网络整理
导读:我必须创建一个Rails迁移,它创建许多触发器和存储过程. 通常会使用execute方法执行此操作,但由于语句的大小,我宁愿将它们保存在外部文件中并从迁移中引用它. 我怎样才能做到这一点?它甚至可能吗? 解决方法 您可以将它们存储在文本文件中,然后通过File对象读
我必须创建一个Rails迁移,它创建许多触发器和存储过程.

通常会使用execute方法执行此操作,但由于语句的大小,我宁愿将它们保存在外部文件中并从迁移中引用它.

我怎样才能做到这一点?它甚至可能吗?

解决方法

您可以将它们存储在文本文件中,然后通过File对象读取它们.
sql = ""
source = File.new("./sql/procedures.sql","r")
while (line = source.gets)
  sql << line
end
source.close
execute sql

这很难看,但很有效.我强烈建议在迁移中保留存储过程/触发器以便轻松回滚.

如果您执行“外部文件”方法,则每次迁移需要维护两个额外的文件,一个用于添加所有内容,另一个用于在以下情况下放入:

rake db:rollback

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读