sql >> Databáze >  >> RDS >> Mysql

Vícenásobné DB spojení v kolejích

Zkuste

rake db:create:all

A ano, v aplikaci Rails je možné mít více db připojení.

To je to, co jsem udělal jednou, vytvořil jsem dvě třídy, které dědí z ActiveRecord::Base a nastavit připojení uvnitř těchto tříd.

Potom jsem zdědil všechny své modely v jedné z těchto tříd namísto přímého ActiveRecord

Níže je uveden příklad:

database.yml file

#app uses two database
#1 - test1
#2 - test2
test1:
  adapter: mysql
  encoding: utf8
  database: test1
  username: root 
  password: xxx
  host: localhost

test2:
  adapter: mysql
  encoding: utf8
  database: test2
  username: root
  password: xxx
  host: localhost

Pak mám dva modely pro databáze test1 a test2:

class Test1Base < ActiveRecord::Base
    self.abstract_class = true
    establish_connection("test1")
end

class Test2Base < ActiveRecord::Base
  # No corresponding table in the DB.
  self.abstract_class = true
  establish_connection("test2")
end

Poté zdědím své modely podle databáze:

class School < Test1Base
  #code
end

class Student < Test2Base
  #code
end


  1. Existuje způsob, jak uložit zobrazení do mezipaměti, aby byly dotazy na něj rychlé?

  2. Důvody, proč v SQL Server 2005 nemají seskupený index

  3. INSERT INTO...SELECT pro všechny sloupce MySQL

  4. SQL SELECT MAX