Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So definieren Sie eine vorzeichenlose Ganzzahl in SQLAlchemy

SQLAlchemy-Typen (wie Integer ). ) scheinen zu versuchen, sich an die Standard-SQL-Datentypen zu halten. Da eine „vorzeichenlose Ganzzahl“ kein Standarddatentyp ist, werden Sie so etwas wie eine UnsignedInteger nicht sehen oder Integer(unsigned=True) .

In Fällen wie diesen (wo eine Datenbank wie MySQL einen Datentyp hat, der selbst kein Standarddatentyp ist, oder Optionen hat, die nicht standardmäßig sind) können Sie auf diese Typen/Optionen zugreifen, indem Sie dialektspezifische Typen abrufen. Bei MySQL können Sie auf diese Typen über sqlalchemy.dialects.mysql Modul , so...

from sqlalchemy.dialects.mysql import INTEGER

class Users(db.Model):
    id           = db.Column(INTEGER(unsigned=True), primary_key=True)
    UserName     = db.Column(db.String(40))
    FirstName    = db.Column(db.String(40))
    LastName     = db.Column(db.String(40))
    EmailAddress = db.Column(db.String(255))
    Password     = db.Column(db.String(40))