your best bet for now is to issue an ALTER TABLE that applies the
AUTO_INCREMENT, if MySQL supports that.
from sqlalchemy.schema import DDL
DDL("ALTER TABLE person ...", on='mysql').execute_at('after-create',
person_table)
On May 30, 2010, at 7:20 PM, Anthony Theocharis wrote:
> Hi everybody,
>
> I'm looking to create an auto increment column on a non-primary key column.
> I'm using SqlAlchemy 0.6.0 and MySQL 5
>
> I can do this in plain SQL with the following:
> CREATE TABLE person (
> id INTEGER NOT NULL AUTO_INCREMENT,
> first_name VARCHAR(100) NOT NULL,
> last_name VARCHAR(100) NOT NULL,
> PRIMARY KEY (first_name, last_name),
> UNIQUE (id)
> )
> but would like to do it with SQLAlchemy, so I can keep my whole schema
> defined in Python.
>
> I've tried using a Sequence() object as an argument to my column definition,
> but to no avail with MySQL. Is it possible to just add the "AUTO_INCREMENT"
> string to the table definition? I realize this would be a MySQL-only
> solution, but would be willing to accept that for now.
>
> I've made a StackOverflow post with more details:
> http://stackoverflow.com/questions/2937229/set-auto-increment-using-sqlalchemy-with-mysql-on-columns-with-non-primary-keys
>
> Thanks,
> Anthony Theocharis
>
> --
> You received this message because you are subscribed to the Google Groups
> "sqlalchemy" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> 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 [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sqlalchemy?hl=en.