数据库
首页 > 数据库> > mysql – 数据库特定的迁移代码

mysql – 数据库特定的迁移代码

作者:互联网

参见英文答案 > How do I check the Database type in a Rails Migration?                                    5个
我正在创建一个需要在多个数据库下运行的应用程序.我目前在迁移中有一些代码,我只想在特定的数据库(postgresql和mysql)下运行.有什么方法可以设置吗?谢谢.

解决方法:

您的迁移可以访问connection中的数据库连接,并且连接具有adapter_name方法,因此您可以询问它是什么类型的连接:

def self.up
    case connection.adapter_name
    when 'PostgreSQL'
        # Do PostgreSQL stuff
    when 'MySQL'
        # Do MySQL stuff
    else
        # Blow up and catch on fire. Or silently ignore it depending on your needs.
    end
end

我不确定我的MySQL适配器名称是否正确,但技术是否合理,您可以自己轻松检查MySQL适配器名称.

标签:ruby-on-rails,mysql,postgresql,migration,rails-migrations
来源: https://codeday.me/bug/20191007/1866545.html