如何在 SQLAlchemy for SQLServer 中为 ID 列定义起始值?

How to define start value for ID column in SQLAlchemy for SQLServer?

我在 Flask 和 SQLServer 之间连接 SQLAlchemy。

我有一个 ID 列,我想从 10000 开始。我找不到答案。

下面是 SQL 代码,我正在尝试转换为 SQLAlchemy。

请告诉我。

感谢

create TABLE [dbo].[Product](
    [ID] [int] IDENTITY(**10000**,1) NOT NULL,
    [Name] [varchar](200) NOT NULL,
    [Description] [varchar](500) NULL,
    [Brand] [varchar](500) NOT NULL,
    [Price] [real] NOT NULL,
    [Qty] [int] NOT NULL,
    [ProductFilenamePrefix] [varchar](200) NOT NULL,
PRIMARY KEY CLUSTERED 
(
    [ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
UNIQUE NONCLUSTERED 
(
    [Name] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

您需要在 SQLA​​lchemy 创建 table 之后进行一些更改,如上面 MySQL 的链接所示,但使用 SQL 服务器。

from sqlalchemy import event
from sqlalchemy import DDL
event.listen(
    Article.__table__,
    "after_create",
    DDL("DBCC checkident (%(table)s, reseed, 9999)")
)

这将使插入的下一条记录从标识值 10000 开始。祝你好运。