On Apr 15, 2010, at 11:46 AM, Gerry Reno wrote: > Upgraded to beta3. > > So you're saying that if we want to be able to drop a constraint later > on we must create it with a name. > Alright. But I am still getting an Operational Error: > > ################################################ > #!/usr/bin/env python > > import sqlalchemy > from sqlalchemy import Table, Column, MetaData > from sqlalchemy.schema import * > from sqlalchemy.types import * > > from sqlalchemy import create_engine > engine = create_engine('sqlite:///:memory:', echo=True) > > metadata = MetaData() > > category = Table('category', metadata, > Column('name', String (64), nullable=False ), > PrimaryKeyConstraint('name', name='name'), > ) > > metadata.create_all(engine) > > from sqlalchemy.schema import DropConstraint > > engine.execute(DropConstraint(category.constraints.pop())) > > cursor.execute(statement, parameters) > sqlalchemy.exc.OperationalError: (OperationalError) near "DROP": > syntax error u'ALTER TABLE category DROP CONSTRAINT name' () > > What am I doing wrong here?
SQLite doesn't support ALTER TABLE. > > -Gerry > > > On Apr 15, 12:28 am, Michael Bayer <mike...@zzzcomputing.com> wrote: >> don't know why you'd be using beta1 when we're up to beta3.....heres a >> fully working example: >> >> from sqlalchemy import * >> from sqlalchemy.schema import * >> >> metadata = MetaData() >> >> c1 = Table('category', metadata, >> Column('name', String (64), nullable=False ), >> PrimaryKeyConstraint('name', name='somename') >> ) >> >> c2 = Table('category2', metadata, >> Column('name', String (64), nullable=False ), >> Column('name2', String (64), nullable=False ), >> PrimaryKeyConstraint('name', 'name2', name='somename') >> ) >> >> print DropConstraint(c1.constraints.pop()) >> print DropConstraint(c2.constraints.pop()) >> >> On Apr 14, 2010, at 9:40 PM, Gerry Reno wrote: >> >> >> >>> Ok, I tried with the keyword but I get this using 0.6beta1: >> >>> PrimaryKeyConstraint(id='id'), >>> File "/usr/lib/python2.5/site-packages/sqlalchemy/schema.py", line >>> 1391, in __init__ >>> super(ColumnCollectionConstraint, self).__init__(**kw) >>> TypeError: __init__() got an unexpected keyword argument 'id' >> >>> -Gerry >> >>> On Apr 14, 9:28 pm, Gerry Reno <gr...@verizon.net> wrote: >>>> What do I do then for a composite primary key? >> >>>> PrimaryKeyConstraint('col1','col2') >> >>>> -Gerry >> >>>> On Apr 14, 9:13 pm, Michael Bayer <mike...@zzzcomputing.com> wrote: >> >>>>> PrimaryKeyConstraint(name='name') >> >>>>> On Apr 14, 2010, at 8:22 PM, Gerry Reno wrote: >> >>>>>> category = Table('category', metadata, >>>>>> Column('name', String (64), nullable=False ), >>>>>> ... >>>>>> PrimaryKeyConstraint('name'), >>>>>> ) >> >>> -- >>> 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. > -- 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.