我正在编写一个脚本,用于检查是否已根据迁移创建了mysql表。
def is_table_created?(db, table)
begin
ActiveRecord::Base.connection_pool.with_connection do |c|
return c.table_exists?("%s.%s" % [db, table])
end
rescue Mysql2::Error, ActiveRecord::StatementInvalid => e
logger.warn(e)
return false
end
end
但我不知道它有什么问题。每次提出异常。
答案 0 :(得分:0)
我是通过使用mysql2 gem完成的。
def is_table_created?(db, table)
begin
connection = Mysql2::Client.new(host: 'localhost', username: 'root', database: db)
connection.query("describe #{table};")
return true
rescue Exception => e
logger.warn(e)
return false
ensure
connection.close if connection
end
end