首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Ruby on Rails 開發實戰(四十三):ActiveRecord 基礎 - 連接資料庫

     編輯:Java 相關知識

ActiveRecord 透過資料庫適配器抽象連線細節,支援多種資料庫系統。

建立連線:establish_connection

ActiveRecord::Base.establish_connection(
  :adapter  => "mysql",
  :host     => "dbserver.com",
  :database => "railsdb",
  :username => "railsuser",
  :password => "railspw"
)

支援資料庫與常用參數

資料庫適配器名稱備註
MySQLmysql
PostgreSQLpostgresql
SQLitesqlite3
Oracleoci注意適配器名為 oci
SQL Serversqlserver
DB2db2

各適配器參數略有差異,常用鍵::adapter、:host、:database、:username、:password、:port、:socket 等。

模型層級覆蓋連線

所有模型繼承 ActiveRecord::Base 共享連線。特定模型可獨立設定:

ActiveRecord::Base.establish_connection(:adapter => "mysql", :database => "online", ...)

class LineItem < ActiveRecord::Base; end
class Order < ActiveRecord::Base; end

class Customer < ActiveRecord::Base
  establish_connection(:adapter => "mysql", :database => "backend", ...)
end

設定檔最佳實踐

實務上不在程式碼寫死連線參數,而是使用 config/database.yml:

  • 環境隔離(development/test/production)
  • 程式碼與設定分離,利於部署
  • establish_connection(:production) 可直接引用 YAML 區段名
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved