<p>如果在表类上进行映射,这将不起作用。对于SqlAlchemy 1.2.7,<code>implicit_returning</code>可以通过为<code>insert()</code>设置参数<code>inline=True</code>(<a href="http://docs.sqlalchemy.org/en/latest/core/dml.html" rel="nofollow noreferrer">documentation</a>-检查insert部分中的“input”参数)来关闭<code>implicit_returning</code>。在</p>
<p>下面是我的实现,它还利用sessionmaker运行查询:</p>
<pre><code>from sqlalchemy.orm import mapper, sessionmaker
from sqlalchemy import MetaData, create_engine, Table
class User(object):
pass
def CreateUser(event):
#Retrieve event
email = event["email"]
firstName = event["firstName"]
lastName = event["lastName"]
#Create connection
conn_str = "mssql+pymssql://<username>:<password>@<rds_host>:1433/<db_name>"
engine = create_engine(conn_str)
metadata = MetaData(engine, reflect=True)
#Create session
Session = sessionmaker()
Session.configure(bind=engine)
session = Session()
#Retrieve DB table
users = Table("tblUser", metadata, autoload=True)
mapper(User, users)
#Insert record
isInline = True
insert = users.insert(None, isInline).values(FirstName=firstName, LastName=lastName, Email=email)
session.execute(insert)
session.commit()
</code></pre>