我已經繼承了使用SQLAlchemy的Pylons應用程序。我對SQLAlchemy一無所知,對於主塔幾乎一無所知:)使用SQLAlchemy的Pylons應用程序中的原始SQL?
我需要從應用程序中運行一些原始SQL。在SQLAlchemy的目前似乎以下列方式進行工作(例如代碼):
import myapp.model as model
model.Session.query(model.KeyValue) # existing code
.join(model.Key)
.filter(model.Key.name == name)
).count() == 0, name
如何獲得它運行原始的SQL?我看到我需要一個execute()語句,但我究竟如何運行它?以下都失敗:
model.Session.execute('create table hello_world;')
model.Connection.execute("""
create table hello_world;
""")
什麼是魔法調用?在現有代碼中沒有提到Connection對象,我不知道如何創建一個。
沒有 - 不幸的是,我工作過遺傳代碼... – AP257 2010-09-20 21:11:01
你覺得我應該嘗試建立一個明確的連接,按該例子嗎?我只是想知道是否有一種聰明的方式,因爲我似乎繼承了試圖巧妙做事的代碼。 – AP257 2010-09-20 21:14:42
我會嘗試的第一件事就是創建一個明確的連接,是的。如果這不起作用,那麼過於聰明的東西肯定會繼續。祝你好運與繼承的代碼。 – 2010-09-20 21:55:03