MySQL Rails – 如何从外部数据库访问表格
在本文中,我们将介绍如何在Rails应用程序中从外部MySQL数据库中访问表格。假设您的Rails应用程序需要访问另一个MySQL数据库中的表格,该怎么办呢?
阅读更多:MySQL 教程
第一步 – 配置database.yml文件
首先,我们需要修改Rails应用程序中的database.yml文件,以配置连接到外部MySQL数据库的详细信息。在database.yml文件中,我们需要添加一个新的配置块,如下所示:
在这个配置块中,我们需要指定连接到外部MySQL数据库所需的详细信息,包括adapter(MySQL适配器)、encoding(编码方式)、database(数据库名称)、username(用户名)、password(密码)、host(主机名)和port(端口号)。确保将这些值替换为实际的数据库详细信息。
第二步 – 创建外部模型
接下来,我们需要创建一个新的Rails模型,以便在应用程序中访问外部MySQL数据库中的表格。我们可以使用Rails命令行工具来创建这个模型,如下所示:
在这个命令中,我们创建了一个名为ExternalTable的新模型,并使用–database选项指定连接到外部MySQL数据库。此命令将创建一个新的模型文件,位于app/models/external_table.rb中,并包含以下内容:
在这个模型文件中,我们使用ActiveRecord库的establish_connection方法指定了连接到外部MySQL数据库的详细信息。我们还可以通过添加其他属性和方法来定义与外部表格的交互。
第三步 – 访问外部表格
一旦我们创建了外部模型,就可以使用Rails应用程序的常规方式来访问外部表格。例如,我们可以使用以下代码从ExternalTable模型中检索记录:
我们还可以使用其他的ActiveRecord方法,例如where,find和create等等。
示例说明
假设我们有一个名为users的表格,存储在外部MySQL数据库中。我们可以像下面这样从ExtrenalTable模型中检索该表格的所有记录:
这条代码将返回外部MySQL数据库中的users表格的所有记录,作为ActiveRecord对象的集合。
总结
本文介绍了如何在Rails应用程序中从外部MySQL数据库中访问表格。要完成这项任务,我们需要修改database.yml文件,创建一个新的外部模型,并使用ActiveRecord库的方法来访问外部表格。通过这些步骤,我们可以轻松地在Rails应用程序中访问任何外部MySQL数据库中的表格。