如何在SQLAlchemy中定义无符号整数

我正在使用Flask-SQLAlchemy(MySQL)将门户迁移到Flask。以下是我用于为现有门户创建数据库的代码:

 Users = """CREATE TABLE Users(

id INT UNSIGNED AUTO_INCREMENT NOT NULL,

UserName VARCHAR(40) NOT NULL,

FirstName VARCHAR(40) NOT NULL,

LastName VARCHAR(40) NOT NULL,

EmailAddress VARCHAR(255) NOT NULL,

Password VARCHAR(40) NOT NULL,

PRIMARY KEY (id)

) """

这是我尝试在SQLAlchemy中使用它的方式:

 class Users(db.Model):

id = db.Column(db.Integer, 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))

我的问题是,如何使SQLAlchemy模型指定为无符号整数

回答:

在这种情况下(如MySQL这样的数据库其数据类型本身不是标准数据类型或具有非标准选项),你可以通过获取特定于方言的类型来访问这些类型/选项。对于MySQL,你可以通过sqlalchemy.dialects.mysql模块访问这些类型,就像这样…

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))

以上是 如何在SQLAlchemy中定义无符号整数 的全部内容, 来源链接: utcz.com/qa/432226.html

回到顶部