2011-11-06 32 views

回答

2

是的,可以做到。雖然我沒有任何特定於Node.js的經驗,但我已經使用SQLAlchemy來:

  • 爲非SQLAlchemy應用程序設置小數據庫。
  • 查詢,更新和遷移未使用SQLAlchemy創建的數據庫。
  • 將新的SQLAlchemy應用程序連接到現有的MySQL數據庫。

僅當使用它來設置數據庫時,一個考慮因素是默認情況下,您選擇在模型中定義的級聯或其他參照完整性細節不會由MySQL本身強制實施。我知道有可能後端句柄更新或刪除級聯與passive_deletespassive_updates選項,但我不知道是否或如何通過SQLAlchemy在後端自動創建這些規則。

0

儘管使用SQLAlchemy的遷移工具是一個好主意,但節點的一些ORM實際上在合理地處理遷移問題方面做得很好。例如,Persistence JS可以將數據庫同步到JS文件中聲明的屬性。儘管如此,SQLAlchemy是一個很好的選擇,我相信 - 它足夠靈活,可以處理任何可能拋出的數據庫結構(與Ruby的ActiveRecord不同,它使得假設在您的案例中可能會也可能不會是真實的) )。

1

我使用SQLAlchemy-migrate來創建/更新/降級數據庫模式。它允許您將模式設計爲​​SQLAlchemy模型或純SQL語句(或混合)。您可以在本地存儲庫中爲您的模式創建升級/降級步驟的「版本」,然後應用於SQLAlchemy可以與之交談的任何數據庫。

相關問題