Thank you very much, I understand it from now on

On 4月19日, 下午4时55分, "King Simon-NFHD78" <simon.k...@motorola.com>
wrote:
> > -----Original Message-----
> > From: sqlalchemy@googlegroups.com
> > [mailto:sqlalch...@googlegroups.com] On Behalf Of Gaicitadie
> > Sent: 16 April 2010 20:06
> > To: sqlalchemy
> > Subject: [sqlalchemy] Is the mapper must have a primary_key?
>
> > #!/usr/bin/python
> > # -*- coding: UTF-8 -*-
>
> > from sqlalchemy import *
> > from sqlalchemy.orm import *
> > from sqlalchemy.ext.declarative import declarative_base
>
> > Base = declarative_base()
>
> > class Test(Base):
> >    __tablename__ = 'test'
>
> >    tid = Column(Integer)
>
> > engine = create_engine('sqlite:///:memory:', echo=True)
> > metadata = Base.metadata
> > metadata.create_all(engine)
>
> [SNIP]
>
>
>
> > It seems must make a primary_key for table,but my table need't
> > primary_key,what can i do?
>
> The ORM part of SQLALchemy requires that you have some combination of columns 
> that uniquely identify a row in the database. This is so that when you load 
> an instance from the database, then modify it and flush your changes back to 
> the database, the updates actually get applied to the correct row. It also 
> means that if you load rows from the same table more than once in the same 
> Session, you always get the same instance back for a given row. Note that the 
> columns don't have to actually be a primary key in the database.
>
> If you are treating the database as read-only and you have rows in your table 
> which really are identical, you may be better off just using the lower-level 
> SQL expression language part of SA, which doesn't have these constraints.
>
> Hope that helps,
>
> Simon
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To post to this group, send email to sqlalch...@googlegroups.com.
> To unsubscribe from this group, send email to 
> sqlalchemy+unsubscr...@googlegroups.com.
> For more options, visit this group 
> athttp://groups.google.com/group/sqlalchemy?hl=en.- 隐藏被引用文字 -
>
> - 显示引用的文字 -

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalch...@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.

Reply via email to