You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure Synapse Analytics中无需专用SQL创建带自增标识列的空白Delta表

创建带自动递增标识列的空白Delta表(无需专用SQL)

针对你的需求,以下是两种基于Spark/Delta Lake的实现方式,无需依赖Synapse专用SQL池的TSQL:

方法1:PySpark API方式

通过PySpark定义表结构并创建空Delta表,同时配置自增列规则:

from pyspark.sql.types import StructType, StructField, IntegerType, StringType

# 自定义表结构,id为自动递增列,其他列按需添加
table_schema = StructType([
    StructField("id", IntegerType(), nullable=False),
    StructField("content", StringType(), nullable=True)
])

# 创建空DataFrame
empty_df = spark.createDataFrame([], table_schema)

# 写入为Delta表,启用自增列配置
empty_df.write \
    .format("delta") \
    .mode("overwrite") \
    .option("identityColumn", "id") \
    .option("identityStart", "1") \
    .option("identityIncrement", "1") \
    .saveAsTable("your_target_table")

后续插入数据时,若不指定id列,系统会自动从1开始生成递增数值;若手动指定id,也可覆盖自动生成逻辑。

方法2:Spark SQL方式

直接使用Spark SQL语法创建表(此SQL在Synapse Spark池中执行,并非专用SQL池的TSQL):

CREATE TABLE your_target_table (
    id INT GENERATED ALWAYS AS IDENTITY (START WITH 1 INCREMENT BY 1),
    content STRING
) USING DELTA;

这种方式更简洁,同样支持自动递增列的生成,且完全避开了专用SQL池的TSQL限制。

内容的提问来源于stack exchange,提问作者rjrpacis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 13:32:14