首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用rails控制台查看特定数据库中的表

问无法使用rails控制台查看特定数据库中的表
EN

Stack Overflow用户
提问于 2017-11-28 06:10:06
回答 2查看 974关注 0票数 1

在我的案子里。在我的单个应用程序中,我使用了两个不同的数据库。一个是mysql,另一个是sqlsever。

ActiveRecord::Base.connection.tables

使用此命令,我已经看到mysql数据库表中的所有表。但我不知道使用rails控制台查看特定数据库表的命令。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-28 06:12:05

试试下面的代码:

代码语言:javascript
复制
a=ActiveRecord::Base.establish_connection(
  :adapter=> "adapter_name",
  :encoding=> "utf8",
  :reconnect=> "false",
  :database=> "db_name",
  :pool=> "5",
  :username=> "xxxx",
  :password=> "xxxxxxx",
  :host=>"xx.xx.xx.xx"
)

a.connection.tables
票数 0
EN

Stack Overflow用户

发布于 2017-11-28 09:27:28

下面的代码返回database.yml中提到的所有表的数组,特别是数据库连接。

代码语言:javascript
复制
ActiveRecord::Base.establish_connection(Rails.configuration.database_configuration["#{other_connection_name}"]).connection.tables

其中other_connection_name是database.yml中提到的与DB连接的名称。

例如,database.yml

代码语言:javascript
复制
development:
  adapter: mysql2
  encoding: utf8
  collation: utf8_bin
  reconnect: true
  database: dev_schema
  pool: 5
  username: xxx
  password: xxxx
  host: localhost

otherconnection:
  adapter: mysql2
  encoding: utf8
  collation: utf8_bin
  reconnect: true
  database: gbl_schema
  pool: 5
  username: xxx
  password: xxx
  host: localhost

对于上述database.yml,我们使用下面的代码分别检索dev_schema和gbl_schema中的所有表。

代码语言:javascript
复制
ActiveRecord::Base.establish_connection(Rails.configuration.database_configuration["development"]).connection.tables
ActiveRecord::Base.establish_connection(Rails.configuration.database_configuration["otherconnection"]).connection.tables
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47525015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档