如何使用Rails 3從現有數據庫中的表中讀取與Rails 3標準架構不匹配的數據?Ruby on Rails 3,續集,攻擊現有數據庫
我被告知續集寶石是一個很好的開始,但我沒有太多的東西。
具體細節:
- 這是一個Oracle數據庫。我已經建立了連接,並確認遷移和回滾正常工作。
- 我已經爲所需的表格和相關列生成了腳手架。
- 我正在尋找一種方法來指定和映射相關的表和列。
- 這可以在沒有Sequel的情況下完成嗎?
如何使用Rails 3從現有數據庫中的表中讀取與Rails 3標準架構不匹配的數據?Ruby on Rails 3,續集,攻擊現有數據庫
我被告知續集寶石是一個很好的開始,但我沒有太多的東西。
具體細節:
續集是一個很好的寶石。這是我在處理遺留數據庫時的第一選擇。
它是一個Oracle數據庫。我已經建立了連接,並確認遷移和回滾正常工作。
如果您的數據庫位於企業中且正在生產中,並且正在被其他應用程序使用,那麼您需要非常小心地使用遷移。如果你也負責數據庫開發,我建議只使用它們,即使這樣我也會小心。
我已經爲所需的表和相關列生成了腳手架。
通過腳手架,你的意思是形式?
我正在尋找一種方法來指定和映射相關的表和列。
續集非常靈活,可讓您使用原始SQL,使用模型或在兩者之間工作。如果你有一個名爲「湯匙」並已連接到它的表:
DB[:spoons]
將創建一個數據集來訪問表。從那裏,你可以追加WHERE子句,選擇,排序等
的另一種方法是使用模型,類似的ActiveRecord:
class Spoon < Sequel:Model
end
這對於所有創建的表的記錄與存取模型領域。
續集對主索引名稱"id"
進行了假設,如ActiveRecord,但您可以根據需要進行更改。
這兩種方法都非常強大,並且對於使用字段及其類型的自動發現的數據庫來說效果很好。
The README是您需要知道的一個非常好的概述。
另外,Jeremy Evans是開發人員,如果您問他技術問題,他會非常敏感。
這可以在沒有Sequel的情況下完成嗎?
當然。 ActiveRecord將使用模型,但如果它們不符合預定的/預期的名稱,您可能必須告訴它鍵或表的名稱。