Python-MSSQL(pymssql)设置字段标识列

时间:2018-05-29 17:48:08

标签: python sql-server pyodbc pymssql identity-column

我一直在尝试使用SQL上的python将ObjectID设置为Identity列。以下SQL语句适用于Management Studio(SSMS),并将ObjectID设置为Identity列。该代码有效,但在检查SSMS上的表时,我没有将ObjectID视为标识列。

以下方法适用于python,但不要更改SSMS上的标识列。

  1. 每次执行后添加linewidths

  2. 使用python文件阅读器运行.sql文件。

  3. 如图所示,在python中执行代码后,Identity列仍然为空。

    enter image description here

    代码由SSMS生成,我的目的是设置ObjectID字段Identity列。也许有更好的方法。

    以下是代码:

    conn.commit()

    任何帮助将不胜感激。

    由于

1 个答案:

答案 0 :(得分:0)

问题解决了。每次创建新表时,STSrid都会更改,因此从SQL代码中取出这部分会有所帮助。但是,我不确定空间索引是否保持不变。

干杯

cursor.execute("""
ALTER TABLE dbo.""" + newTableName + """ ADD CONSTRAINT
    g1084_ck CHECK (([Shape].[STSrid]=(4326))) """)