首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TurboGears2/SQLAlchemy:使用自动增量主键在表中插入新行

TurboGears2/SQLAlchemy:使用自动增量主键在表中插入新行
EN

Stack Overflow用户
提问于 2009-09-02 07:37:07
回答 1查看 553关注 0票数 1

我是一个新手,正在尝试让我的头脑去理解TG2和SQLAlchemy。我目前正在努力解决的具体问题是,当PK字段配置为自动增量时,如何在表中插入新行。

例如:

在我的myproject.model.myproject.py文件中,我定义了下表:

代码语言:javascript
复制
class Dj(DeclarativeBase):
    __tablename__ = 'djs'

    #{ Columns

    djID = Column(Integer,  autoincrement=True, primary_key=True)
    djname = Column(String)
    djwebpage = Column(String)
    #}

在我的websetup.py文件中,我用一些初始数据填充它。因为这是第一行数据,所以我作弊并将djID定义为"1“

代码语言:javascript
复制
dj = model.Dj("1", "DJ Anonymous", "http://www.djanonymous.com")

如果我想让websetup.py在djs表中创建第二行(通过对象Dj),我该怎么做呢?

我之前尝试了许多不同的东西,但都没有成功。例如,如果我使用相同的格式,但只包含2个字符串(对于djname和djwebpage列),我会得到一个错误,抱怨我没有给它提供足够的参数。

当然,最终,我需要弄清楚如何创建一个控制器来允许我将新条目插入到表中……但是,我将一步一步地学习,并感谢通过websetup.py文件成功地使用多行预先填充了表。希望这能给我一些线索,让我能够进入下一步。

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-09-07 07:56:19

好吧,你的问题很简单(我印象深刻,这个问题很长时间都没有得到回答:)。

首先,

  • 为什么将id列命名为"djID"?为什么不只是id?Second
  • you ‘t insert into it,这就是为什么it's autoincrement.
  • Third first basic SA教程解释了这个
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1366295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档