1. Registry
  2. Packages
  3. Snowflake Provider
  4. API Docs
  5. IcebergTable
Viewing docs for Snowflake v2.19.0
published on Friday, Jul 31, 2026 by Pulumi
snowflake logo
Viewing docs for Snowflake v2.19.0
published on Friday, Jul 31, 2026 by Pulumi

    Caution: Preview Feature This feature is considered a preview feature in the provider, regardless of the state of the resource in Snowflake. We do not guarantee its stability. It will be reworked and marked as a stable feature in future releases. Breaking changes are expected, even without bumping the major version. To use this feature, add the relevant feature name to previewFeaturesEnabled field in the provider configuration. Please always refer to the Getting Help section in our Github repo to best determine how to get help for your questions.

    Note Any change to the column block (adding, removing, renaming, retyping, or reordering a column) recreates the whole table, because column definitions can currently only be set at creation time (Snowflake ALTER ICEBERG TABLE column operations are not yet used by this resource). This will be addressed in a future release.

    Note primaryKeyConstraint, uniqueConstraint, foreignKeyConstraint, and checkConstraint can only be set at creation time; changing or removing them recreates the whole table. They also are not read back from Snowflake, so external changes to these constraints (e.g. added, dropped, or altered outside Terraform) are not detected, and after importing the resource, the first pulumi preview may show a diff for these fields even without a config change.

    Note pathLayout, errorLogging, and changeTracking are not returned by SHOW/DESCRIBE ICEBERG TABLE, so external changes to these fields are not detected. clusterBy is not read back either, because Snowflake does not expose the original clustering key expression for Iceberg tables.

    Resource used to manage a Snowflake-managed Iceberg table. For more information, check the official documentation.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as snowflake from "@pulumi/snowflake";
    
    // Basic - only required fields
    const basic = new snowflake.IcebergTable("basic", {
        database: "DATABASE",
        schema: "SCHEMA",
        name: "TABLE",
        columns: [
            {
                name: "ID",
                type: "NUMBER(38,0)",
            },
            {
                name: "NAME",
                type: "VARCHAR(16777216)",
            },
        ],
    });
    // Complete - every field set (except cluster_by, which conflicts with partition_by - see below)
    const complete = new snowflake.IcebergTable("complete", {
        database: "DATABASE",
        schema: "SCHEMA",
        name: "TABLE",
        comment: "COMMENT",
        externalVolume: "EXTERNAL_VOLUME",
        catalog: "SNOWFLAKE",
        catalogSync: "CATALOG_INTEGRATION",
        targetFileSize: "64MB",
        storageSerializationPolicy: "OPTIMIZED",
        dataRetentionTimeInDays: 5,
        maxDataExtensionTimeInDays: 10,
        enableDataCompaction: true,
        enableIcebergMergeOnRead: true,
        baseLocation: "iceberg_table",
        pathLayout: "FLAT",
        changeTracking: "true",
        icebergVersion: 2,
        errorLogging: "true",
        columns: [
            {
                name: "ID",
                type: "NUMBER(38,0)",
                notNull: "true",
                comment: "Primary identifier",
            },
            {
                name: "NAME",
                type: "VARCHAR(16777216)",
                comment: "Name of the entity",
                maskingPolicy: {
                    policyName: "MASKING_POLICY",
                    usings: ["NAME"],
                },
            },
            {
                name: "REGION",
                type: "VARCHAR(16777216)",
                projectionPolicy: {
                    policyName: "PROJECTION_POLICY",
                },
            },
            {
                name: "STATUS",
                type: "VARCHAR(16777216)",
            },
            {
                name: "CATEGORY",
                type: "VARCHAR(16777216)",
                maskingPolicy: {
                    policyName: "CONDITIONAL_MASKING_POLICY",
                    usings: [
                        "CATEGORY",
                        "STATUS",
                    ],
                },
            },
            {
                name: "CREATED_AT",
                type: "TIMESTAMP_NTZ(9)",
                "default": {
                    expression: "CURRENT_TIMESTAMP()",
                },
            },
            {
                name: "REF_ID",
                type: "NUMBER(38,0)",
                "default": {
                    expression: "2",
                },
            },
        ],
        primaryKeyConstraint: {
            name: "PK",
            columns: ["ID"],
            enforced: "false",
            deferrable: "true",
            initiallyDeferred: "true",
            enable: "true",
            validate: "true",
            rely: "true",
            comment: "Primary key constraint",
        },
        uniqueConstraints: [{
            name: "NAME_UQ",
            columns: ["NAME"],
            enforced: "false",
            deferrable: "true",
            initiallyDeferred: "true",
            enable: "true",
            validate: "true",
            rely: "true",
            comment: "Unique constraint on name",
        }],
        foreignKeyConstraints: [{
            name: "FK",
            columns: ["REF_ID"],
            tableName: "OTHER_DATABASE.OTHER_SCHEMA.OTHER_TABLE",
            refColumns: ["ID"],
            match: "SIMPLE",
            onUpdate: "CASCADE",
            onDelete: "SET NULL",
            enforced: "false",
            deferrable: "true",
            initiallyDeferred: "true",
            enable: "true",
            validate: "true",
            rely: "true",
            comment: "Foreign key constraint",
        }],
        checkConstraints: [{
            name: "CHK",
            expression: "ID > 0",
            validate: "true",
        }],
        rowAccessPolicy: {
            policyName: "ROW_ACCESS_POLICY",
            ons: ["ID"],
        },
        aggregationPolicy: {
            policyName: "AGGREGATION_POLICY",
            entityKeys: ["ID"],
        },
        partitionBies: [
            {
                identity: "REGION",
            },
            {
                bucket: {
                    numBuckets: 4,
                    column: "ID",
                },
            },
            {
                truncate: {
                    width: 10,
                    column: "NAME",
                },
            },
            {
                year: "CREATED_AT",
            },
            {
                month: "CREATED_AT",
            },
            {
                day: "CREATED_AT",
            },
            {
                hour: "CREATED_AT",
            },
        ],
    });
    // cluster_by conflicts with partition_by, so it is shown on a separate resource.
    const completeWithClusterBy = new snowflake.IcebergTable("complete_with_cluster_by", {
        database: "DATABASE",
        schema: "SCHEMA",
        name: "TABLE",
        columns: [
            {
                name: "ID",
                type: "NUMBER(38,0)",
            },
            {
                name: "NAME",
                type: "VARCHAR(16777216)",
            },
        ],
        clusterBies: [
            "ID",
            "NAME",
        ],
    });
    
    import pulumi
    import pulumi_snowflake as snowflake
    
    # Basic - only required fields
    basic = snowflake.IcebergTable("basic",
        database="DATABASE",
        schema="SCHEMA",
        name="TABLE",
        columns=[
            {
                "name": "ID",
                "type": "NUMBER(38,0)",
            },
            {
                "name": "NAME",
                "type": "VARCHAR(16777216)",
            },
        ])
    # Complete - every field set (except cluster_by, which conflicts with partition_by - see below)
    complete = snowflake.IcebergTable("complete",
        database="DATABASE",
        schema="SCHEMA",
        name="TABLE",
        comment="COMMENT",
        external_volume="EXTERNAL_VOLUME",
        catalog="SNOWFLAKE",
        catalog_sync="CATALOG_INTEGRATION",
        target_file_size="64MB",
        storage_serialization_policy="OPTIMIZED",
        data_retention_time_in_days=5,
        max_data_extension_time_in_days=10,
        enable_data_compaction=True,
        enable_iceberg_merge_on_read=True,
        base_location="iceberg_table",
        path_layout="FLAT",
        change_tracking="true",
        iceberg_version=2,
        error_logging="true",
        columns=[
            {
                "name": "ID",
                "type": "NUMBER(38,0)",
                "not_null": "true",
                "comment": "Primary identifier",
            },
            {
                "name": "NAME",
                "type": "VARCHAR(16777216)",
                "comment": "Name of the entity",
                "masking_policy": {
                    "policy_name": "MASKING_POLICY",
                    "usings": ["NAME"],
                },
            },
            {
                "name": "REGION",
                "type": "VARCHAR(16777216)",
                "projection_policy": {
                    "policy_name": "PROJECTION_POLICY",
                },
            },
            {
                "name": "STATUS",
                "type": "VARCHAR(16777216)",
            },
            {
                "name": "CATEGORY",
                "type": "VARCHAR(16777216)",
                "masking_policy": {
                    "policy_name": "CONDITIONAL_MASKING_POLICY",
                    "usings": [
                        "CATEGORY",
                        "STATUS",
                    ],
                },
            },
            {
                "name": "CREATED_AT",
                "type": "TIMESTAMP_NTZ(9)",
                "default": {
                    "expression": "CURRENT_TIMESTAMP()",
                },
            },
            {
                "name": "REF_ID",
                "type": "NUMBER(38,0)",
                "default": {
                    "expression": "2",
                },
            },
        ],
        primary_key_constraint={
            "name": "PK",
            "columns": ["ID"],
            "enforced": "false",
            "deferrable": "true",
            "initially_deferred": "true",
            "enable": "true",
            "validate": "true",
            "rely": "true",
            "comment": "Primary key constraint",
        },
        unique_constraints=[{
            "name": "NAME_UQ",
            "columns": ["NAME"],
            "enforced": "false",
            "deferrable": "true",
            "initially_deferred": "true",
            "enable": "true",
            "validate": "true",
            "rely": "true",
            "comment": "Unique constraint on name",
        }],
        foreign_key_constraints=[{
            "name": "FK",
            "columns": ["REF_ID"],
            "table_name": "OTHER_DATABASE.OTHER_SCHEMA.OTHER_TABLE",
            "ref_columns": ["ID"],
            "match": "SIMPLE",
            "on_update": "CASCADE",
            "on_delete": "SET NULL",
            "enforced": "false",
            "deferrable": "true",
            "initially_deferred": "true",
            "enable": "true",
            "validate": "true",
            "rely": "true",
            "comment": "Foreign key constraint",
        }],
        check_constraints=[{
            "name": "CHK",
            "expression": "ID > 0",
            "validate": "true",
        }],
        row_access_policy={
            "policy_name": "ROW_ACCESS_POLICY",
            "ons": ["ID"],
        },
        aggregation_policy={
            "policy_name": "AGGREGATION_POLICY",
            "entity_keys": ["ID"],
        },
        partition_bies=[
            {
                "identity": "REGION",
            },
            {
                "bucket": {
                    "num_buckets": 4,
                    "column": "ID",
                },
            },
            {
                "truncate": {
                    "width": 10,
                    "column": "NAME",
                },
            },
            {
                "year": "CREATED_AT",
            },
            {
                "month": "CREATED_AT",
            },
            {
                "day": "CREATED_AT",
            },
            {
                "hour": "CREATED_AT",
            },
        ])
    # cluster_by conflicts with partition_by, so it is shown on a separate resource.
    complete_with_cluster_by = snowflake.IcebergTable("complete_with_cluster_by",
        database="DATABASE",
        schema="SCHEMA",
        name="TABLE",
        columns=[
            {
                "name": "ID",
                "type": "NUMBER(38,0)",
            },
            {
                "name": "NAME",
                "type": "VARCHAR(16777216)",
            },
        ],
        cluster_bies=[
            "ID",
            "NAME",
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-snowflake/sdk/v2/go/snowflake"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Basic - only required fields
    		_, err := snowflake.NewIcebergTable(ctx, "basic", &snowflake.IcebergTableArgs{
    			Database: pulumi.String("DATABASE"),
    			Schema:   pulumi.String("SCHEMA"),
    			Name:     pulumi.String("TABLE"),
    			Columns: snowflake.IcebergTableColumnArray{
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("ID"),
    					Type: pulumi.String("NUMBER(38,0)"),
    				},
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("NAME"),
    					Type: pulumi.String("VARCHAR(16777216)"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Complete - every field set (except cluster_by, which conflicts with partition_by - see below)
    		_, err = snowflake.NewIcebergTable(ctx, "complete", &snowflake.IcebergTableArgs{
    			Database:                   pulumi.String("DATABASE"),
    			Schema:                     pulumi.String("SCHEMA"),
    			Name:                       pulumi.String("TABLE"),
    			Comment:                    pulumi.String("COMMENT"),
    			ExternalVolume:             pulumi.String("EXTERNAL_VOLUME"),
    			Catalog:                    pulumi.String("SNOWFLAKE"),
    			CatalogSync:                pulumi.String("CATALOG_INTEGRATION"),
    			TargetFileSize:             pulumi.String("64MB"),
    			StorageSerializationPolicy: pulumi.String("OPTIMIZED"),
    			DataRetentionTimeInDays:    pulumi.Int(5),
    			MaxDataExtensionTimeInDays: pulumi.Int(10),
    			EnableDataCompaction:       pulumi.Bool(true),
    			EnableIcebergMergeOnRead:   pulumi.Bool(true),
    			BaseLocation:               pulumi.String("iceberg_table"),
    			PathLayout:                 pulumi.String("FLAT"),
    			ChangeTracking:             pulumi.String("true"),
    			IcebergVersion:             pulumi.Int(2),
    			ErrorLogging:               pulumi.String("true"),
    			Columns: snowflake.IcebergTableColumnArray{
    				&snowflake.IcebergTableColumnArgs{
    					Name:    pulumi.String("ID"),
    					Type:    pulumi.String("NUMBER(38,0)"),
    					NotNull: pulumi.String("true"),
    					Comment: pulumi.String("Primary identifier"),
    				},
    				&snowflake.IcebergTableColumnArgs{
    					Name:    pulumi.String("NAME"),
    					Type:    pulumi.String("VARCHAR(16777216)"),
    					Comment: pulumi.String("Name of the entity"),
    					MaskingPolicy: &snowflake.IcebergTableColumnMaskingPolicyArgs{
    						PolicyName: pulumi.String("MASKING_POLICY"),
    						Usings: pulumi.StringArray{
    							pulumi.String("NAME"),
    						},
    					},
    				},
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("REGION"),
    					Type: pulumi.String("VARCHAR(16777216)"),
    					ProjectionPolicy: &snowflake.IcebergTableColumnProjectionPolicyArgs{
    						PolicyName: pulumi.String("PROJECTION_POLICY"),
    					},
    				},
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("STATUS"),
    					Type: pulumi.String("VARCHAR(16777216)"),
    				},
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("CATEGORY"),
    					Type: pulumi.String("VARCHAR(16777216)"),
    					MaskingPolicy: &snowflake.IcebergTableColumnMaskingPolicyArgs{
    						PolicyName: pulumi.String("CONDITIONAL_MASKING_POLICY"),
    						Usings: pulumi.StringArray{
    							pulumi.String("CATEGORY"),
    							pulumi.String("STATUS"),
    						},
    					},
    				},
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("CREATED_AT"),
    					Type: pulumi.String("TIMESTAMP_NTZ(9)"),
    					Default: &snowflake.IcebergTableColumnDefaultArgs{
    						Expression: pulumi.String("CURRENT_TIMESTAMP()"),
    					},
    				},
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("REF_ID"),
    					Type: pulumi.String("NUMBER(38,0)"),
    					Default: &snowflake.IcebergTableColumnDefaultArgs{
    						Expression: pulumi.String("2"),
    					},
    				},
    			},
    			PrimaryKeyConstraint: &snowflake.IcebergTablePrimaryKeyConstraintArgs{
    				Name: pulumi.String("PK"),
    				Columns: pulumi.StringArray{
    					pulumi.String("ID"),
    				},
    				Enforced:          pulumi.String("false"),
    				Deferrable:        pulumi.String("true"),
    				InitiallyDeferred: pulumi.String("true"),
    				Enable:            pulumi.String("true"),
    				Validate:          pulumi.String("true"),
    				Rely:              pulumi.String("true"),
    				Comment:           pulumi.String("Primary key constraint"),
    			},
    			UniqueConstraints: snowflake.IcebergTableUniqueConstraintArray{
    				&snowflake.IcebergTableUniqueConstraintArgs{
    					Name: pulumi.String("NAME_UQ"),
    					Columns: pulumi.StringArray{
    						pulumi.String("NAME"),
    					},
    					Enforced:          pulumi.String("false"),
    					Deferrable:        pulumi.String("true"),
    					InitiallyDeferred: pulumi.String("true"),
    					Enable:            pulumi.String("true"),
    					Validate:          pulumi.String("true"),
    					Rely:              pulumi.String("true"),
    					Comment:           pulumi.String("Unique constraint on name"),
    				},
    			},
    			ForeignKeyConstraints: snowflake.IcebergTableForeignKeyConstraintArray{
    				&snowflake.IcebergTableForeignKeyConstraintArgs{
    					Name: pulumi.String("FK"),
    					Columns: pulumi.StringArray{
    						pulumi.String("REF_ID"),
    					},
    					TableName: pulumi.String("OTHER_DATABASE.OTHER_SCHEMA.OTHER_TABLE"),
    					RefColumns: pulumi.StringArray{
    						pulumi.String("ID"),
    					},
    					Match:             pulumi.String("SIMPLE"),
    					OnUpdate:          pulumi.String("CASCADE"),
    					OnDelete:          pulumi.String("SET NULL"),
    					Enforced:          pulumi.String("false"),
    					Deferrable:        pulumi.String("true"),
    					InitiallyDeferred: pulumi.String("true"),
    					Enable:            pulumi.String("true"),
    					Validate:          pulumi.String("true"),
    					Rely:              pulumi.String("true"),
    					Comment:           pulumi.String("Foreign key constraint"),
    				},
    			},
    			CheckConstraints: snowflake.IcebergTableCheckConstraintArray{
    				&snowflake.IcebergTableCheckConstraintArgs{
    					Name:       pulumi.String("CHK"),
    					Expression: pulumi.String("ID > 0"),
    					Validate:   pulumi.String("true"),
    				},
    			},
    			RowAccessPolicy: &snowflake.IcebergTableRowAccessPolicyArgs{
    				PolicyName: pulumi.String("ROW_ACCESS_POLICY"),
    				Ons: pulumi.StringArray{
    					pulumi.String("ID"),
    				},
    			},
    			AggregationPolicy: &snowflake.IcebergTableAggregationPolicyArgs{
    				PolicyName: pulumi.String("AGGREGATION_POLICY"),
    				EntityKeys: pulumi.StringArray{
    					pulumi.String("ID"),
    				},
    			},
    			PartitionBies: snowflake.IcebergTablePartitionByArray{
    				&snowflake.IcebergTablePartitionByArgs{
    					Identity: pulumi.String("REGION"),
    				},
    				&snowflake.IcebergTablePartitionByArgs{
    					Bucket: &snowflake.IcebergTablePartitionByBucketArgs{
    						NumBuckets: pulumi.Int(4),
    						Column:     pulumi.String("ID"),
    					},
    				},
    				&snowflake.IcebergTablePartitionByArgs{
    					Truncate: &snowflake.IcebergTablePartitionByTruncateArgs{
    						Width:  pulumi.Int(10),
    						Column: pulumi.String("NAME"),
    					},
    				},
    				&snowflake.IcebergTablePartitionByArgs{
    					Year: pulumi.String("CREATED_AT"),
    				},
    				&snowflake.IcebergTablePartitionByArgs{
    					Month: pulumi.String("CREATED_AT"),
    				},
    				&snowflake.IcebergTablePartitionByArgs{
    					Day: pulumi.String("CREATED_AT"),
    				},
    				&snowflake.IcebergTablePartitionByArgs{
    					Hour: pulumi.String("CREATED_AT"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// cluster_by conflicts with partition_by, so it is shown on a separate resource.
    		_, err = snowflake.NewIcebergTable(ctx, "complete_with_cluster_by", &snowflake.IcebergTableArgs{
    			Database: pulumi.String("DATABASE"),
    			Schema:   pulumi.String("SCHEMA"),
    			Name:     pulumi.String("TABLE"),
    			Columns: snowflake.IcebergTableColumnArray{
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("ID"),
    					Type: pulumi.String("NUMBER(38,0)"),
    				},
    				&snowflake.IcebergTableColumnArgs{
    					Name: pulumi.String("NAME"),
    					Type: pulumi.String("VARCHAR(16777216)"),
    				},
    			},
    			ClusterBies: pulumi.StringArray{
    				pulumi.String("ID"),
    				pulumi.String("NAME"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Snowflake = Pulumi.Snowflake;
    
    return await Deployment.RunAsync(() => 
    {
        // Basic - only required fields
        var basic = new Snowflake.IcebergTable("basic", new()
        {
            Database = "DATABASE",
            Schema = "SCHEMA",
            Name = "TABLE",
            Columns = new[]
            {
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "ID",
                    Type = "NUMBER(38,0)",
                },
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "NAME",
                    Type = "VARCHAR(16777216)",
                },
            },
        });
    
        // Complete - every field set (except cluster_by, which conflicts with partition_by - see below)
        var complete = new Snowflake.IcebergTable("complete", new()
        {
            Database = "DATABASE",
            Schema = "SCHEMA",
            Name = "TABLE",
            Comment = "COMMENT",
            ExternalVolume = "EXTERNAL_VOLUME",
            Catalog = "SNOWFLAKE",
            CatalogSync = "CATALOG_INTEGRATION",
            TargetFileSize = "64MB",
            StorageSerializationPolicy = "OPTIMIZED",
            DataRetentionTimeInDays = 5,
            MaxDataExtensionTimeInDays = 10,
            EnableDataCompaction = true,
            EnableIcebergMergeOnRead = true,
            BaseLocation = "iceberg_table",
            PathLayout = "FLAT",
            ChangeTracking = "true",
            IcebergVersion = 2,
            ErrorLogging = "true",
            Columns = new[]
            {
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "ID",
                    Type = "NUMBER(38,0)",
                    NotNull = "true",
                    Comment = "Primary identifier",
                },
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "NAME",
                    Type = "VARCHAR(16777216)",
                    Comment = "Name of the entity",
                    MaskingPolicy = new Snowflake.Inputs.IcebergTableColumnMaskingPolicyArgs
                    {
                        PolicyName = "MASKING_POLICY",
                        Usings = new[]
                        {
                            "NAME",
                        },
                    },
                },
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "REGION",
                    Type = "VARCHAR(16777216)",
                    ProjectionPolicy = new Snowflake.Inputs.IcebergTableColumnProjectionPolicyArgs
                    {
                        PolicyName = "PROJECTION_POLICY",
                    },
                },
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "STATUS",
                    Type = "VARCHAR(16777216)",
                },
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "CATEGORY",
                    Type = "VARCHAR(16777216)",
                    MaskingPolicy = new Snowflake.Inputs.IcebergTableColumnMaskingPolicyArgs
                    {
                        PolicyName = "CONDITIONAL_MASKING_POLICY",
                        Usings = new[]
                        {
                            "CATEGORY",
                            "STATUS",
                        },
                    },
                },
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "CREATED_AT",
                    Type = "TIMESTAMP_NTZ(9)",
                    Default = new Snowflake.Inputs.IcebergTableColumnDefaultArgs
                    {
                        Expression = "CURRENT_TIMESTAMP()",
                    },
                },
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "REF_ID",
                    Type = "NUMBER(38,0)",
                    Default = new Snowflake.Inputs.IcebergTableColumnDefaultArgs
                    {
                        Expression = "2",
                    },
                },
            },
            PrimaryKeyConstraint = new Snowflake.Inputs.IcebergTablePrimaryKeyConstraintArgs
            {
                Name = "PK",
                Columns = new[]
                {
                    "ID",
                },
                Enforced = "false",
                Deferrable = "true",
                InitiallyDeferred = "true",
                Enable = "true",
                Validate = "true",
                Rely = "true",
                Comment = "Primary key constraint",
            },
            UniqueConstraints = new[]
            {
                new Snowflake.Inputs.IcebergTableUniqueConstraintArgs
                {
                    Name = "NAME_UQ",
                    Columns = new[]
                    {
                        "NAME",
                    },
                    Enforced = "false",
                    Deferrable = "true",
                    InitiallyDeferred = "true",
                    Enable = "true",
                    Validate = "true",
                    Rely = "true",
                    Comment = "Unique constraint on name",
                },
            },
            ForeignKeyConstraints = new[]
            {
                new Snowflake.Inputs.IcebergTableForeignKeyConstraintArgs
                {
                    Name = "FK",
                    Columns = new[]
                    {
                        "REF_ID",
                    },
                    TableName = "OTHER_DATABASE.OTHER_SCHEMA.OTHER_TABLE",
                    RefColumns = new[]
                    {
                        "ID",
                    },
                    Match = "SIMPLE",
                    OnUpdate = "CASCADE",
                    OnDelete = "SET NULL",
                    Enforced = "false",
                    Deferrable = "true",
                    InitiallyDeferred = "true",
                    Enable = "true",
                    Validate = "true",
                    Rely = "true",
                    Comment = "Foreign key constraint",
                },
            },
            CheckConstraints = new[]
            {
                new Snowflake.Inputs.IcebergTableCheckConstraintArgs
                {
                    Name = "CHK",
                    Expression = "ID > 0",
                    Validate = "true",
                },
            },
            RowAccessPolicy = new Snowflake.Inputs.IcebergTableRowAccessPolicyArgs
            {
                PolicyName = "ROW_ACCESS_POLICY",
                Ons = new[]
                {
                    "ID",
                },
            },
            AggregationPolicy = new Snowflake.Inputs.IcebergTableAggregationPolicyArgs
            {
                PolicyName = "AGGREGATION_POLICY",
                EntityKeys = new[]
                {
                    "ID",
                },
            },
            PartitionBies = new[]
            {
                new Snowflake.Inputs.IcebergTablePartitionByArgs
                {
                    Identity = "REGION",
                },
                new Snowflake.Inputs.IcebergTablePartitionByArgs
                {
                    Bucket = new Snowflake.Inputs.IcebergTablePartitionByBucketArgs
                    {
                        NumBuckets = 4,
                        Column = "ID",
                    },
                },
                new Snowflake.Inputs.IcebergTablePartitionByArgs
                {
                    Truncate = new Snowflake.Inputs.IcebergTablePartitionByTruncateArgs
                    {
                        Width = 10,
                        Column = "NAME",
                    },
                },
                new Snowflake.Inputs.IcebergTablePartitionByArgs
                {
                    Year = "CREATED_AT",
                },
                new Snowflake.Inputs.IcebergTablePartitionByArgs
                {
                    Month = "CREATED_AT",
                },
                new Snowflake.Inputs.IcebergTablePartitionByArgs
                {
                    Day = "CREATED_AT",
                },
                new Snowflake.Inputs.IcebergTablePartitionByArgs
                {
                    Hour = "CREATED_AT",
                },
            },
        });
    
        // cluster_by conflicts with partition_by, so it is shown on a separate resource.
        var completeWithClusterBy = new Snowflake.IcebergTable("complete_with_cluster_by", new()
        {
            Database = "DATABASE",
            Schema = "SCHEMA",
            Name = "TABLE",
            Columns = new[]
            {
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "ID",
                    Type = "NUMBER(38,0)",
                },
                new Snowflake.Inputs.IcebergTableColumnArgs
                {
                    Name = "NAME",
                    Type = "VARCHAR(16777216)",
                },
            },
            ClusterBies = new[]
            {
                "ID",
                "NAME",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.snowflake.IcebergTable;
    import com.pulumi.snowflake.IcebergTableArgs;
    import com.pulumi.snowflake.inputs.IcebergTableColumnArgs;
    import com.pulumi.snowflake.inputs.IcebergTableColumnMaskingPolicyArgs;
    import com.pulumi.snowflake.inputs.IcebergTableColumnProjectionPolicyArgs;
    import com.pulumi.snowflake.inputs.IcebergTableColumnDefaultArgs;
    import com.pulumi.snowflake.inputs.IcebergTablePrimaryKeyConstraintArgs;
    import com.pulumi.snowflake.inputs.IcebergTableUniqueConstraintArgs;
    import com.pulumi.snowflake.inputs.IcebergTableForeignKeyConstraintArgs;
    import com.pulumi.snowflake.inputs.IcebergTableCheckConstraintArgs;
    import com.pulumi.snowflake.inputs.IcebergTableRowAccessPolicyArgs;
    import com.pulumi.snowflake.inputs.IcebergTableAggregationPolicyArgs;
    import com.pulumi.snowflake.inputs.IcebergTablePartitionByArgs;
    import com.pulumi.snowflake.inputs.IcebergTablePartitionByBucketArgs;
    import com.pulumi.snowflake.inputs.IcebergTablePartitionByTruncateArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // Basic - only required fields
            var basic = new IcebergTable("basic", IcebergTableArgs.builder()
                .database("DATABASE")
                .schema("SCHEMA")
                .name("TABLE")
                .columns(            
                    IcebergTableColumnArgs.builder()
                        .name("ID")
                        .type("NUMBER(38,0)")
                        .build(),
                    IcebergTableColumnArgs.builder()
                        .name("NAME")
                        .type("VARCHAR(16777216)")
                        .build())
                .build());
    
            // Complete - every field set (except cluster_by, which conflicts with partition_by - see below)
            var complete = new IcebergTable("complete", IcebergTableArgs.builder()
                .database("DATABASE")
                .schema("SCHEMA")
                .name("TABLE")
                .comment("COMMENT")
                .externalVolume("EXTERNAL_VOLUME")
                .catalog("SNOWFLAKE")
                .catalogSync("CATALOG_INTEGRATION")
                .targetFileSize("64MB")
                .storageSerializationPolicy("OPTIMIZED")
                .dataRetentionTimeInDays(5)
                .maxDataExtensionTimeInDays(10)
                .enableDataCompaction(true)
                .enableIcebergMergeOnRead(true)
                .baseLocation("iceberg_table")
                .pathLayout("FLAT")
                .changeTracking("true")
                .icebergVersion(2)
                .errorLogging("true")
                .columns(            
                    IcebergTableColumnArgs.builder()
                        .name("ID")
                        .type("NUMBER(38,0)")
                        .notNull("true")
                        .comment("Primary identifier")
                        .build(),
                    IcebergTableColumnArgs.builder()
                        .name("NAME")
                        .type("VARCHAR(16777216)")
                        .comment("Name of the entity")
                        .maskingPolicy(IcebergTableColumnMaskingPolicyArgs.builder()
                            .policyName("MASKING_POLICY")
                            .usings("NAME")
                            .build())
                        .build(),
                    IcebergTableColumnArgs.builder()
                        .name("REGION")
                        .type("VARCHAR(16777216)")
                        .projectionPolicy(IcebergTableColumnProjectionPolicyArgs.builder()
                            .policyName("PROJECTION_POLICY")
                            .build())
                        .build(),
                    IcebergTableColumnArgs.builder()
                        .name("STATUS")
                        .type("VARCHAR(16777216)")
                        .build(),
                    IcebergTableColumnArgs.builder()
                        .name("CATEGORY")
                        .type("VARCHAR(16777216)")
                        .maskingPolicy(IcebergTableColumnMaskingPolicyArgs.builder()
                            .policyName("CONDITIONAL_MASKING_POLICY")
                            .usings(                        
                                "CATEGORY",
                                "STATUS")
                            .build())
                        .build(),
                    IcebergTableColumnArgs.builder()
                        .name("CREATED_AT")
                        .type("TIMESTAMP_NTZ(9)")
                        .default_(IcebergTableColumnDefaultArgs.builder()
                            .expression("CURRENT_TIMESTAMP()")
                            .build())
                        .build(),
                    IcebergTableColumnArgs.builder()
                        .name("REF_ID")
                        .type("NUMBER(38,0)")
                        .default_(IcebergTableColumnDefaultArgs.builder()
                            .expression("2")
                            .build())
                        .build())
                .primaryKeyConstraint(IcebergTablePrimaryKeyConstraintArgs.builder()
                    .name("PK")
                    .columns("ID")
                    .enforced("false")
                    .deferrable("true")
                    .initiallyDeferred("true")
                    .enable("true")
                    .validate("true")
                    .rely("true")
                    .comment("Primary key constraint")
                    .build())
                .uniqueConstraints(IcebergTableUniqueConstraintArgs.builder()
                    .name("NAME_UQ")
                    .columns("NAME")
                    .enforced("false")
                    .deferrable("true")
                    .initiallyDeferred("true")
                    .enable("true")
                    .validate("true")
                    .rely("true")
                    .comment("Unique constraint on name")
                    .build())
                .foreignKeyConstraints(IcebergTableForeignKeyConstraintArgs.builder()
                    .name("FK")
                    .columns("REF_ID")
                    .tableName("OTHER_DATABASE.OTHER_SCHEMA.OTHER_TABLE")
                    .refColumns("ID")
                    .match("SIMPLE")
                    .onUpdate("CASCADE")
                    .onDelete("SET NULL")
                    .enforced("false")
                    .deferrable("true")
                    .initiallyDeferred("true")
                    .enable("true")
                    .validate("true")
                    .rely("true")
                    .comment("Foreign key constraint")
                    .build())
                .checkConstraints(IcebergTableCheckConstraintArgs.builder()
                    .name("CHK")
                    .expression("ID > 0")
                    .validate("true")
                    .build())
                .rowAccessPolicy(IcebergTableRowAccessPolicyArgs.builder()
                    .policyName("ROW_ACCESS_POLICY")
                    .ons("ID")
                    .build())
                .aggregationPolicy(IcebergTableAggregationPolicyArgs.builder()
                    .policyName("AGGREGATION_POLICY")
                    .entityKeys("ID")
                    .build())
                .partitionBies(            
                    IcebergTablePartitionByArgs.builder()
                        .identity("REGION")
                        .build(),
                    IcebergTablePartitionByArgs.builder()
                        .bucket(IcebergTablePartitionByBucketArgs.builder()
                            .numBuckets(4)
                            .column("ID")
                            .build())
                        .build(),
                    IcebergTablePartitionByArgs.builder()
                        .truncate(IcebergTablePartitionByTruncateArgs.builder()
                            .width(10)
                            .column("NAME")
                            .build())
                        .build(),
                    IcebergTablePartitionByArgs.builder()
                        .year("CREATED_AT")
                        .build(),
                    IcebergTablePartitionByArgs.builder()
                        .month("CREATED_AT")
                        .build(),
                    IcebergTablePartitionByArgs.builder()
                        .day("CREATED_AT")
                        .build(),
                    IcebergTablePartitionByArgs.builder()
                        .hour("CREATED_AT")
                        .build())
                .build());
    
            // cluster_by conflicts with partition_by, so it is shown on a separate resource.
            var completeWithClusterBy = new IcebergTable("completeWithClusterBy", IcebergTableArgs.builder()
                .database("DATABASE")
                .schema("SCHEMA")
                .name("TABLE")
                .columns(            
                    IcebergTableColumnArgs.builder()
                        .name("ID")
                        .type("NUMBER(38,0)")
                        .build(),
                    IcebergTableColumnArgs.builder()
                        .name("NAME")
                        .type("VARCHAR(16777216)")
                        .build())
                .clusterBies(            
                    "ID",
                    "NAME")
                .build());
    
        }
    }
    
    resources:
      # Basic - only required fields
      basic:
        type: snowflake:IcebergTable
        properties:
          database: DATABASE
          schema: SCHEMA
          name: TABLE
          columns:
            - name: ID
              type: NUMBER(38,0)
            - name: NAME
              type: VARCHAR(16777216)
      # Complete - every field set (except cluster_by, which conflicts with partition_by - see below)
      complete:
        type: snowflake:IcebergTable
        properties:
          database: DATABASE
          schema: SCHEMA
          name: TABLE
          comment: COMMENT
          externalVolume: EXTERNAL_VOLUME
          catalog: SNOWFLAKE
          catalogSync: CATALOG_INTEGRATION
          targetFileSize: 64MB
          storageSerializationPolicy: OPTIMIZED
          dataRetentionTimeInDays: 5
          maxDataExtensionTimeInDays: 10
          enableDataCompaction: true
          enableIcebergMergeOnRead: true
          baseLocation: iceberg_table
          pathLayout: FLAT
          changeTracking: 'true'
          icebergVersion: 2
          errorLogging: 'true'
          columns:
            - name: ID
              type: NUMBER(38,0)
              notNull: 'true'
              comment: Primary identifier
            - name: NAME
              type: VARCHAR(16777216)
              comment: Name of the entity
              maskingPolicy:
                policyName: MASKING_POLICY
                usings:
                  - NAME
            - name: REGION
              type: VARCHAR(16777216)
              projectionPolicy:
                policyName: PROJECTION_POLICY
            - name: STATUS
              type: VARCHAR(16777216)
            - name: CATEGORY
              type: VARCHAR(16777216)
              maskingPolicy:
                policyName: CONDITIONAL_MASKING_POLICY
                usings:
                  - CATEGORY
                  - STATUS
            - name: CREATED_AT
              type: TIMESTAMP_NTZ(9)
              default:
                expression: CURRENT_TIMESTAMP()
            - name: REF_ID
              type: NUMBER(38,0)
              default:
                expression: '2'
          primaryKeyConstraint:
            name: PK
            columns:
              - ID
            enforced: 'false'
            deferrable: 'true'
            initiallyDeferred: 'true'
            enable: 'true'
            validate: 'true'
            rely: 'true'
            comment: Primary key constraint
          uniqueConstraints:
            - name: NAME_UQ
              columns:
                - NAME
              enforced: 'false'
              deferrable: 'true'
              initiallyDeferred: 'true'
              enable: 'true'
              validate: 'true'
              rely: 'true'
              comment: Unique constraint on name
          foreignKeyConstraints:
            - name: FK
              columns:
                - REF_ID
              tableName: OTHER_DATABASE.OTHER_SCHEMA.OTHER_TABLE
              refColumns:
                - ID
              match: SIMPLE
              onUpdate: CASCADE
              onDelete: SET NULL
              enforced: 'false'
              deferrable: 'true'
              initiallyDeferred: 'true'
              enable: 'true'
              validate: 'true'
              rely: 'true'
              comment: Foreign key constraint
          checkConstraints:
            - name: CHK
              expression: ID > 0
              validate: 'true'
          rowAccessPolicy:
            policyName: ROW_ACCESS_POLICY
            ons:
              - ID
          aggregationPolicy:
            policyName: AGGREGATION_POLICY
            entityKeys:
              - ID
          partitionBies:
            - identity: REGION
            - bucket:
                numBuckets: 4
                column: ID
            - truncate:
                width: 10
                column: NAME
            - year: CREATED_AT
            - month: CREATED_AT
            - day: CREATED_AT
            - hour: CREATED_AT
      # cluster_by conflicts with partition_by, so it is shown on a separate resource.
      completeWithClusterBy:
        type: snowflake:IcebergTable
        name: complete_with_cluster_by
        properties:
          database: DATABASE
          schema: SCHEMA
          name: TABLE
          columns:
            - name: ID
              type: NUMBER(38,0)
            - name: NAME
              type: VARCHAR(16777216)
          clusterBies:
            - ID
            - NAME
    
    pulumi {
      required_providers {
        snowflake = {
          source = "pulumi/snowflake"
        }
      }
    }
    
    # Basic - only required fields
    resource "snowflake_icebergtable" "basic" {
      database = "DATABASE"
      schema   = "SCHEMA"
      name     = "TABLE"
      columns {
        name = "ID"
        type = "NUMBER(38,0)"
      }
      columns {
        name = "NAME"
        type = "VARCHAR(16777216)"
      }
    }
    # Complete - every field set (except cluster_by, which conflicts with partition_by - see below)
    resource "snowflake_icebergtable" "complete" {
      database                        = "DATABASE"
      schema                          = "SCHEMA"
      name                            = "TABLE"
      comment                         = "COMMENT"
      external_volume                 = "EXTERNAL_VOLUME"
      catalog                         = "SNOWFLAKE"
      catalog_sync                    = "CATALOG_INTEGRATION"
      target_file_size                = "64MB"
      storage_serialization_policy    = "OPTIMIZED"
      data_retention_time_in_days     = 5
      max_data_extension_time_in_days = 10
      enable_data_compaction          = true
      enable_iceberg_merge_on_read    = true
      base_location                   = "iceberg_table"
      path_layout                     = "FLAT"
      change_tracking                 = "true"
      iceberg_version                 = 2
      error_logging                   = "true"
      columns {
        name     = "ID"
        type     = "NUMBER(38,0)"
        not_null = "true"
        comment  = "Primary identifier"
      }
      columns {
        name    = "NAME"
        type    = "VARCHAR(16777216)"
        comment = "Name of the entity"
        masking_policy = {
          policy_name = "MASKING_POLICY"
          usings      = ["NAME"]
        }
      }
      columns {
        name = "REGION"
        type = "VARCHAR(16777216)"
        projection_policy = {
          policy_name = "PROJECTION_POLICY"
        }
      }
      columns {
        name = "STATUS"
        type = "VARCHAR(16777216)"
      }
      columns {
        name = "CATEGORY"
        type = "VARCHAR(16777216)"
        masking_policy = {
          policy_name = "CONDITIONAL_MASKING_POLICY"
          usings      = ["CATEGORY", "STATUS"]
        }
      }
      columns {
        name = "CREATED_AT"
        type = "TIMESTAMP_NTZ(9)"
        default = {
          expression = "CURRENT_TIMESTAMP()"
        }
      }
      columns {
        name = "REF_ID"
        type = "NUMBER(38,0)"
        default = {
          expression = "2"
        }
      }
      primary_key_constraint = {
        name               = "PK"
        columns            = ["ID"]
        enforced           = "false"
        deferrable         = "true"
        initially_deferred = "true"
        enable             = "true"
        validate           = "true"
        rely               = "true"
        comment            = "Primary key constraint"
      }
      unique_constraints {
        name               = "NAME_UQ"
        columns            = ["NAME"]
        enforced           = "false"
        deferrable         = "true"
        initially_deferred = "true"
        enable             = "true"
        validate           = "true"
        rely               = "true"
        comment            = "Unique constraint on name"
      }
      foreign_key_constraints {
        name               = "FK"
        columns            = ["REF_ID"]
        table_name         = "OTHER_DATABASE.OTHER_SCHEMA.OTHER_TABLE"
        ref_columns        = ["ID"]
        match              = "SIMPLE"
        on_update          = "CASCADE"
        on_delete          = "SET NULL"
        enforced           = "false"
        deferrable         = "true"
        initially_deferred = "true"
        enable             = "true"
        validate           = "true"
        rely               = "true"
        comment            = "Foreign key constraint"
      }
      check_constraints {
        name       = "CHK"
        expression = "ID > 0"
        validate   = "true"
      }
      row_access_policy = {
        policy_name = "ROW_ACCESS_POLICY"
        ons         = ["ID"]
      }
      aggregation_policy = {
        policy_name = "AGGREGATION_POLICY"
        entity_keys = ["ID"]
      }
      partition_bies {
        identity = "REGION"
      }
      partition_bies {
        bucket = {
          num_buckets = 4
          column      = "ID"
        }
      }
      partition_bies {
        truncate = {
          width  = 10
          column = "NAME"
        }
      }
      partition_bies {
        year = "CREATED_AT"
      }
      partition_bies {
        month = "CREATED_AT"
      }
      partition_bies {
        day = "CREATED_AT"
      }
      partition_bies {
        hour = "CREATED_AT"
      }
    }
    # cluster_by conflicts with partition_by, so it is shown on a separate resource.
    resource "snowflake_icebergtable" "complete_with_cluster_by" {
      database = "DATABASE"
      schema   = "SCHEMA"
      name     = "TABLE"
      columns {
        name = "ID"
        type = "NUMBER(38,0)"
      }
      columns {
        name = "NAME"
        type = "VARCHAR(16777216)"
      }
      cluster_bies = ["ID", "NAME"]
    }
    

    Note Instead of using fully_qualified_name, you can reference objects managed outside Terraform by constructing a correct ID, consult identifiers guide.

    Note If a field has a default value, it is shown next to the type in the schema.

    Create IcebergTable Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new IcebergTable(name: string, args: IcebergTableArgs, opts?: CustomResourceOptions);
    @overload
    def IcebergTable(resource_name: str,
                     args: IcebergTableArgs,
                     opts: Optional[ResourceOptions] = None)
    
    @overload
    def IcebergTable(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     columns: Optional[Sequence[IcebergTableColumnArgs]] = None,
                     schema: Optional[str] = None,
                     database: Optional[str] = None,
                     enable_iceberg_merge_on_read: Optional[bool] = None,
                     external_volume: Optional[str] = None,
                     check_constraints: Optional[Sequence[IcebergTableCheckConstraintArgs]] = None,
                     cluster_bies: Optional[Sequence[str]] = None,
                     catalog_sync: Optional[str] = None,
                     comment: Optional[str] = None,
                     data_retention_time_in_days: Optional[int] = None,
                     catalog: Optional[str] = None,
                     enable_data_compaction: Optional[bool] = None,
                     aggregation_policy: Optional[IcebergTableAggregationPolicyArgs] = None,
                     error_logging: Optional[str] = None,
                     change_tracking: Optional[str] = None,
                     foreign_key_constraints: Optional[Sequence[IcebergTableForeignKeyConstraintArgs]] = None,
                     iceberg_version: Optional[int] = None,
                     max_data_extension_time_in_days: Optional[int] = None,
                     name: Optional[str] = None,
                     partition_bies: Optional[Sequence[IcebergTablePartitionByArgs]] = None,
                     path_layout: Optional[str] = None,
                     primary_key_constraint: Optional[IcebergTablePrimaryKeyConstraintArgs] = None,
                     row_access_policy: Optional[IcebergTableRowAccessPolicyArgs] = None,
                     base_location: Optional[str] = None,
                     storage_serialization_policy: Optional[str] = None,
                     target_file_size: Optional[str] = None,
                     unique_constraints: Optional[Sequence[IcebergTableUniqueConstraintArgs]] = None)
    func NewIcebergTable(ctx *Context, name string, args IcebergTableArgs, opts ...ResourceOption) (*IcebergTable, error)
    public IcebergTable(string name, IcebergTableArgs args, CustomResourceOptions? opts = null)
    public IcebergTable(String name, IcebergTableArgs args)
    public IcebergTable(String name, IcebergTableArgs args, CustomResourceOptions options)
    
    type: snowflake:IcebergTable
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "snowflake_iceberg_table" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args IcebergTableArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args IcebergTableArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args IcebergTableArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args IcebergTableArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args IcebergTableArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var icebergTableResource = new Snowflake.IcebergTable("icebergTableResource", new()
    {
        Columns = new[]
        {
            new Snowflake.Inputs.IcebergTableColumnArgs
            {
                Name = "string",
                Type = "string",
                Comment = "string",
                Default = new Snowflake.Inputs.IcebergTableColumnDefaultArgs
                {
                    Expression = "string",
                },
                MaskingPolicy = new Snowflake.Inputs.IcebergTableColumnMaskingPolicyArgs
                {
                    PolicyName = "string",
                    Usings = new[]
                    {
                        "string",
                    },
                },
                NotNull = "string",
                ProjectionPolicy = new Snowflake.Inputs.IcebergTableColumnProjectionPolicyArgs
                {
                    PolicyName = "string",
                },
            },
        },
        Schema = "string",
        Database = "string",
        EnableIcebergMergeOnRead = false,
        ExternalVolume = "string",
        CheckConstraints = new[]
        {
            new Snowflake.Inputs.IcebergTableCheckConstraintArgs
            {
                Expression = "string",
                Name = "string",
                Validate = "string",
            },
        },
        ClusterBies = new[]
        {
            "string",
        },
        CatalogSync = "string",
        Comment = "string",
        DataRetentionTimeInDays = 0,
        Catalog = "string",
        EnableDataCompaction = false,
        AggregationPolicy = new Snowflake.Inputs.IcebergTableAggregationPolicyArgs
        {
            PolicyName = "string",
            EntityKeys = new[]
            {
                "string",
            },
        },
        ErrorLogging = "string",
        ChangeTracking = "string",
        ForeignKeyConstraints = new[]
        {
            new Snowflake.Inputs.IcebergTableForeignKeyConstraintArgs
            {
                Columns = new[]
                {
                    "string",
                },
                TableName = "string",
                Match = "string",
                Enable = "string",
                Enforced = "string",
                InitiallyDeferred = "string",
                Deferrable = "string",
                Name = "string",
                OnDelete = "string",
                OnUpdate = "string",
                RefColumns = new[]
                {
                    "string",
                },
                Rely = "string",
                Comment = "string",
                Validate = "string",
            },
        },
        IcebergVersion = 0,
        MaxDataExtensionTimeInDays = 0,
        Name = "string",
        PartitionBies = new[]
        {
            new Snowflake.Inputs.IcebergTablePartitionByArgs
            {
                Bucket = new Snowflake.Inputs.IcebergTablePartitionByBucketArgs
                {
                    Column = "string",
                    NumBuckets = 0,
                },
                Day = "string",
                Hour = "string",
                Identity = "string",
                Month = "string",
                Truncate = new Snowflake.Inputs.IcebergTablePartitionByTruncateArgs
                {
                    Column = "string",
                    Width = 0,
                },
                Year = "string",
            },
        },
        PathLayout = "string",
        PrimaryKeyConstraint = new Snowflake.Inputs.IcebergTablePrimaryKeyConstraintArgs
        {
            Columns = new[]
            {
                "string",
            },
            Comment = "string",
            Deferrable = "string",
            Enable = "string",
            Enforced = "string",
            InitiallyDeferred = "string",
            Name = "string",
            Rely = "string",
            Validate = "string",
        },
        RowAccessPolicy = new Snowflake.Inputs.IcebergTableRowAccessPolicyArgs
        {
            Ons = new[]
            {
                "string",
            },
            PolicyName = "string",
        },
        BaseLocation = "string",
        StorageSerializationPolicy = "string",
        TargetFileSize = "string",
        UniqueConstraints = new[]
        {
            new Snowflake.Inputs.IcebergTableUniqueConstraintArgs
            {
                Columns = new[]
                {
                    "string",
                },
                Comment = "string",
                Deferrable = "string",
                Enable = "string",
                Enforced = "string",
                InitiallyDeferred = "string",
                Name = "string",
                Rely = "string",
                Validate = "string",
            },
        },
    });
    
    example, err := snowflake.NewIcebergTable(ctx, "icebergTableResource", &snowflake.IcebergTableArgs{
    	Columns: snowflake.IcebergTableColumnArray{
    		&snowflake.IcebergTableColumnArgs{
    			Name:    pulumi.String("string"),
    			Type:    pulumi.String("string"),
    			Comment: pulumi.String("string"),
    			Default: &snowflake.IcebergTableColumnDefaultArgs{
    				Expression: pulumi.String("string"),
    			},
    			MaskingPolicy: &snowflake.IcebergTableColumnMaskingPolicyArgs{
    				PolicyName: pulumi.String("string"),
    				Usings: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			NotNull: pulumi.String("string"),
    			ProjectionPolicy: &snowflake.IcebergTableColumnProjectionPolicyArgs{
    				PolicyName: pulumi.String("string"),
    			},
    		},
    	},
    	Schema:                   pulumi.String("string"),
    	Database:                 pulumi.String("string"),
    	EnableIcebergMergeOnRead: pulumi.Bool(false),
    	ExternalVolume:           pulumi.String("string"),
    	CheckConstraints: snowflake.IcebergTableCheckConstraintArray{
    		&snowflake.IcebergTableCheckConstraintArgs{
    			Expression: pulumi.String("string"),
    			Name:       pulumi.String("string"),
    			Validate:   pulumi.String("string"),
    		},
    	},
    	ClusterBies: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	CatalogSync:             pulumi.String("string"),
    	Comment:                 pulumi.String("string"),
    	DataRetentionTimeInDays: pulumi.Int(0),
    	Catalog:                 pulumi.String("string"),
    	EnableDataCompaction:    pulumi.Bool(false),
    	AggregationPolicy: &snowflake.IcebergTableAggregationPolicyArgs{
    		PolicyName: pulumi.String("string"),
    		EntityKeys: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	ErrorLogging:   pulumi.String("string"),
    	ChangeTracking: pulumi.String("string"),
    	ForeignKeyConstraints: snowflake.IcebergTableForeignKeyConstraintArray{
    		&snowflake.IcebergTableForeignKeyConstraintArgs{
    			Columns: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			TableName:         pulumi.String("string"),
    			Match:             pulumi.String("string"),
    			Enable:            pulumi.String("string"),
    			Enforced:          pulumi.String("string"),
    			InitiallyDeferred: pulumi.String("string"),
    			Deferrable:        pulumi.String("string"),
    			Name:              pulumi.String("string"),
    			OnDelete:          pulumi.String("string"),
    			OnUpdate:          pulumi.String("string"),
    			RefColumns: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Rely:     pulumi.String("string"),
    			Comment:  pulumi.String("string"),
    			Validate: pulumi.String("string"),
    		},
    	},
    	IcebergVersion:             pulumi.Int(0),
    	MaxDataExtensionTimeInDays: pulumi.Int(0),
    	Name:                       pulumi.String("string"),
    	PartitionBies: snowflake.IcebergTablePartitionByArray{
    		&snowflake.IcebergTablePartitionByArgs{
    			Bucket: &snowflake.IcebergTablePartitionByBucketArgs{
    				Column:     pulumi.String("string"),
    				NumBuckets: pulumi.Int(0),
    			},
    			Day:      pulumi.String("string"),
    			Hour:     pulumi.String("string"),
    			Identity: pulumi.String("string"),
    			Month:    pulumi.String("string"),
    			Truncate: &snowflake.IcebergTablePartitionByTruncateArgs{
    				Column: pulumi.String("string"),
    				Width:  pulumi.Int(0),
    			},
    			Year: pulumi.String("string"),
    		},
    	},
    	PathLayout: pulumi.String("string"),
    	PrimaryKeyConstraint: &snowflake.IcebergTablePrimaryKeyConstraintArgs{
    		Columns: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		Comment:           pulumi.String("string"),
    		Deferrable:        pulumi.String("string"),
    		Enable:            pulumi.String("string"),
    		Enforced:          pulumi.String("string"),
    		InitiallyDeferred: pulumi.String("string"),
    		Name:              pulumi.String("string"),
    		Rely:              pulumi.String("string"),
    		Validate:          pulumi.String("string"),
    	},
    	RowAccessPolicy: &snowflake.IcebergTableRowAccessPolicyArgs{
    		Ons: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		PolicyName: pulumi.String("string"),
    	},
    	BaseLocation:               pulumi.String("string"),
    	StorageSerializationPolicy: pulumi.String("string"),
    	TargetFileSize:             pulumi.String("string"),
    	UniqueConstraints: snowflake.IcebergTableUniqueConstraintArray{
    		&snowflake.IcebergTableUniqueConstraintArgs{
    			Columns: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Comment:           pulumi.String("string"),
    			Deferrable:        pulumi.String("string"),
    			Enable:            pulumi.String("string"),
    			Enforced:          pulumi.String("string"),
    			InitiallyDeferred: pulumi.String("string"),
    			Name:              pulumi.String("string"),
    			Rely:              pulumi.String("string"),
    			Validate:          pulumi.String("string"),
    		},
    	},
    })
    
    resource "snowflake_iceberg_table" "icebergTableResource" {
      lifecycle {
        create_before_destroy = true
      }
      columns {
        name    = "string"
        type    = "string"
        comment = "string"
        default = {
          expression = "string"
        }
        masking_policy = {
          policy_name = "string"
          usings      = ["string"]
        }
        not_null = "string"
        projection_policy = {
          policy_name = "string"
        }
      }
      schema                       = "string"
      database                     = "string"
      enable_iceberg_merge_on_read = false
      external_volume              = "string"
      check_constraints {
        expression = "string"
        name       = "string"
        validate   = "string"
      }
      cluster_bies                = ["string"]
      catalog_sync                = "string"
      comment                     = "string"
      data_retention_time_in_days = 0
      catalog                     = "string"
      enable_data_compaction      = false
      aggregation_policy = {
        policy_name = "string"
        entity_keys = ["string"]
      }
      error_logging   = "string"
      change_tracking = "string"
      foreign_key_constraints {
        columns            = ["string"]
        table_name         = "string"
        match              = "string"
        enable             = "string"
        enforced           = "string"
        initially_deferred = "string"
        deferrable         = "string"
        name               = "string"
        on_delete          = "string"
        on_update          = "string"
        ref_columns        = ["string"]
        rely               = "string"
        comment            = "string"
        validate           = "string"
      }
      iceberg_version                 = 0
      max_data_extension_time_in_days = 0
      name                            = "string"
      partition_bies {
        bucket = {
          column      = "string"
          num_buckets = 0
        }
        day      = "string"
        hour     = "string"
        identity = "string"
        month    = "string"
        truncate = {
          column = "string"
          width  = 0
        }
        year = "string"
      }
      path_layout = "string"
      primary_key_constraint = {
        columns            = ["string"]
        comment            = "string"
        deferrable         = "string"
        enable             = "string"
        enforced           = "string"
        initially_deferred = "string"
        name               = "string"
        rely               = "string"
        validate           = "string"
      }
      row_access_policy = {
        ons         = ["string"]
        policy_name = "string"
      }
      base_location                = "string"
      storage_serialization_policy = "string"
      target_file_size             = "string"
      unique_constraints {
        columns            = ["string"]
        comment            = "string"
        deferrable         = "string"
        enable             = "string"
        enforced           = "string"
        initially_deferred = "string"
        name               = "string"
        rely               = "string"
        validate           = "string"
      }
    }
    
    var icebergTableResource = new IcebergTable("icebergTableResource", IcebergTableArgs.builder()
        .columns(IcebergTableColumnArgs.builder()
            .name("string")
            .type("string")
            .comment("string")
            .default_(IcebergTableColumnDefaultArgs.builder()
                .expression("string")
                .build())
            .maskingPolicy(IcebergTableColumnMaskingPolicyArgs.builder()
                .policyName("string")
                .usings("string")
                .build())
            .notNull("string")
            .projectionPolicy(IcebergTableColumnProjectionPolicyArgs.builder()
                .policyName("string")
                .build())
            .build())
        .schema("string")
        .database("string")
        .enableIcebergMergeOnRead(false)
        .externalVolume("string")
        .checkConstraints(IcebergTableCheckConstraintArgs.builder()
            .expression("string")
            .name("string")
            .validate("string")
            .build())
        .clusterBies("string")
        .catalogSync("string")
        .comment("string")
        .dataRetentionTimeInDays(0)
        .catalog("string")
        .enableDataCompaction(false)
        .aggregationPolicy(IcebergTableAggregationPolicyArgs.builder()
            .policyName("string")
            .entityKeys("string")
            .build())
        .errorLogging("string")
        .changeTracking("string")
        .foreignKeyConstraints(IcebergTableForeignKeyConstraintArgs.builder()
            .columns("string")
            .tableName("string")
            .match("string")
            .enable("string")
            .enforced("string")
            .initiallyDeferred("string")
            .deferrable("string")
            .name("string")
            .onDelete("string")
            .onUpdate("string")
            .refColumns("string")
            .rely("string")
            .comment("string")
            .validate("string")
            .build())
        .icebergVersion(0)
        .maxDataExtensionTimeInDays(0)
        .name("string")
        .partitionBies(IcebergTablePartitionByArgs.builder()
            .bucket(IcebergTablePartitionByBucketArgs.builder()
                .column("string")
                .numBuckets(0)
                .build())
            .day("string")
            .hour("string")
            .identity("string")
            .month("string")
            .truncate(IcebergTablePartitionByTruncateArgs.builder()
                .column("string")
                .width(0)
                .build())
            .year("string")
            .build())
        .pathLayout("string")
        .primaryKeyConstraint(IcebergTablePrimaryKeyConstraintArgs.builder()
            .columns("string")
            .comment("string")
            .deferrable("string")
            .enable("string")
            .enforced("string")
            .initiallyDeferred("string")
            .name("string")
            .rely("string")
            .validate("string")
            .build())
        .rowAccessPolicy(IcebergTableRowAccessPolicyArgs.builder()
            .ons("string")
            .policyName("string")
            .build())
        .baseLocation("string")
        .storageSerializationPolicy("string")
        .targetFileSize("string")
        .uniqueConstraints(IcebergTableUniqueConstraintArgs.builder()
            .columns("string")
            .comment("string")
            .deferrable("string")
            .enable("string")
            .enforced("string")
            .initiallyDeferred("string")
            .name("string")
            .rely("string")
            .validate("string")
            .build())
        .build());
    
    iceberg_table_resource = snowflake.IcebergTable("icebergTableResource",
        columns=[{
            "name": "string",
            "type": "string",
            "comment": "string",
            "default": {
                "expression": "string",
            },
            "masking_policy": {
                "policy_name": "string",
                "usings": ["string"],
            },
            "not_null": "string",
            "projection_policy": {
                "policy_name": "string",
            },
        }],
        schema="string",
        database="string",
        enable_iceberg_merge_on_read=False,
        external_volume="string",
        check_constraints=[{
            "expression": "string",
            "name": "string",
            "validate": "string",
        }],
        cluster_bies=["string"],
        catalog_sync="string",
        comment="string",
        data_retention_time_in_days=0,
        catalog="string",
        enable_data_compaction=False,
        aggregation_policy={
            "policy_name": "string",
            "entity_keys": ["string"],
        },
        error_logging="string",
        change_tracking="string",
        foreign_key_constraints=[{
            "columns": ["string"],
            "table_name": "string",
            "match": "string",
            "enable": "string",
            "enforced": "string",
            "initially_deferred": "string",
            "deferrable": "string",
            "name": "string",
            "on_delete": "string",
            "on_update": "string",
            "ref_columns": ["string"],
            "rely": "string",
            "comment": "string",
            "validate": "string",
        }],
        iceberg_version=0,
        max_data_extension_time_in_days=0,
        name="string",
        partition_bies=[{
            "bucket": {
                "column": "string",
                "num_buckets": 0,
            },
            "day": "string",
            "hour": "string",
            "identity": "string",
            "month": "string",
            "truncate": {
                "column": "string",
                "width": 0,
            },
            "year": "string",
        }],
        path_layout="string",
        primary_key_constraint={
            "columns": ["string"],
            "comment": "string",
            "deferrable": "string",
            "enable": "string",
            "enforced": "string",
            "initially_deferred": "string",
            "name": "string",
            "rely": "string",
            "validate": "string",
        },
        row_access_policy={
            "ons": ["string"],
            "policy_name": "string",
        },
        base_location="string",
        storage_serialization_policy="string",
        target_file_size="string",
        unique_constraints=[{
            "columns": ["string"],
            "comment": "string",
            "deferrable": "string",
            "enable": "string",
            "enforced": "string",
            "initially_deferred": "string",
            "name": "string",
            "rely": "string",
            "validate": "string",
        }])
    
    const icebergTableResource = new snowflake.IcebergTable("icebergTableResource", {
        columns: [{
            name: "string",
            type: "string",
            comment: "string",
            "default": {
                expression: "string",
            },
            maskingPolicy: {
                policyName: "string",
                usings: ["string"],
            },
            notNull: "string",
            projectionPolicy: {
                policyName: "string",
            },
        }],
        schema: "string",
        database: "string",
        enableIcebergMergeOnRead: false,
        externalVolume: "string",
        checkConstraints: [{
            expression: "string",
            name: "string",
            validate: "string",
        }],
        clusterBies: ["string"],
        catalogSync: "string",
        comment: "string",
        dataRetentionTimeInDays: 0,
        catalog: "string",
        enableDataCompaction: false,
        aggregationPolicy: {
            policyName: "string",
            entityKeys: ["string"],
        },
        errorLogging: "string",
        changeTracking: "string",
        foreignKeyConstraints: [{
            columns: ["string"],
            tableName: "string",
            match: "string",
            enable: "string",
            enforced: "string",
            initiallyDeferred: "string",
            deferrable: "string",
            name: "string",
            onDelete: "string",
            onUpdate: "string",
            refColumns: ["string"],
            rely: "string",
            comment: "string",
            validate: "string",
        }],
        icebergVersion: 0,
        maxDataExtensionTimeInDays: 0,
        name: "string",
        partitionBies: [{
            bucket: {
                column: "string",
                numBuckets: 0,
            },
            day: "string",
            hour: "string",
            identity: "string",
            month: "string",
            truncate: {
                column: "string",
                width: 0,
            },
            year: "string",
        }],
        pathLayout: "string",
        primaryKeyConstraint: {
            columns: ["string"],
            comment: "string",
            deferrable: "string",
            enable: "string",
            enforced: "string",
            initiallyDeferred: "string",
            name: "string",
            rely: "string",
            validate: "string",
        },
        rowAccessPolicy: {
            ons: ["string"],
            policyName: "string",
        },
        baseLocation: "string",
        storageSerializationPolicy: "string",
        targetFileSize: "string",
        uniqueConstraints: [{
            columns: ["string"],
            comment: "string",
            deferrable: "string",
            enable: "string",
            enforced: "string",
            initiallyDeferred: "string",
            name: "string",
            rely: "string",
            validate: "string",
        }],
    });
    
    type: snowflake:IcebergTable
    properties:
        aggregationPolicy:
            entityKeys:
                - string
            policyName: string
        baseLocation: string
        catalog: string
        catalogSync: string
        changeTracking: string
        checkConstraints:
            - expression: string
              name: string
              validate: string
        clusterBies:
            - string
        columns:
            - comment: string
              default:
                expression: string
              maskingPolicy:
                policyName: string
                usings:
                    - string
              name: string
              notNull: string
              projectionPolicy:
                policyName: string
              type: string
        comment: string
        dataRetentionTimeInDays: 0
        database: string
        enableDataCompaction: false
        enableIcebergMergeOnRead: false
        errorLogging: string
        externalVolume: string
        foreignKeyConstraints:
            - columns:
                - string
              comment: string
              deferrable: string
              enable: string
              enforced: string
              initiallyDeferred: string
              match: string
              name: string
              onDelete: string
              onUpdate: string
              refColumns:
                - string
              rely: string
              tableName: string
              validate: string
        icebergVersion: 0
        maxDataExtensionTimeInDays: 0
        name: string
        partitionBies:
            - bucket:
                column: string
                numBuckets: 0
              day: string
              hour: string
              identity: string
              month: string
              truncate:
                column: string
                width: 0
              year: string
        pathLayout: string
        primaryKeyConstraint:
            columns:
                - string
            comment: string
            deferrable: string
            enable: string
            enforced: string
            initiallyDeferred: string
            name: string
            rely: string
            validate: string
        rowAccessPolicy:
            ons:
                - string
            policyName: string
        schema: string
        storageSerializationPolicy: string
        targetFileSize: string
        uniqueConstraints:
            - columns:
                - string
              comment: string
              deferrable: string
              enable: string
              enforced: string
              initiallyDeferred: string
              name: string
              rely: string
              validate: string
    

    IcebergTable Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The IcebergTable resource accepts the following input properties:

    Columns List<IcebergTableColumn>
    Definitions of the columns to create in the table. Minimum one required.
    Database string
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Schema string
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    AggregationPolicy IcebergTableAggregationPolicy
    Specifies the aggregation policy to set on a Iceberg table.
    BaseLocation string
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    Catalog string
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    CatalogSync string
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    ChangeTracking string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    CheckConstraints List<IcebergTableCheckConstraint>
    Defines a table-level CHECK constraint.
    ClusterBies List<string>
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Comment string
    Specifies a comment for the Iceberg table.
    DataRetentionTimeInDays int
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    EnableDataCompaction bool
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    EnableIcebergMergeOnRead bool
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    ErrorLogging string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    ExternalVolume string
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    ForeignKeyConstraints List<IcebergTableForeignKeyConstraint>
    Defines a table-level FOREIGN KEY constraint.
    IcebergVersion int
    Specifies the Iceberg table format version.
    MaxDataExtensionTimeInDays int
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    Name string
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    PartitionBies List<IcebergTablePartitionBy>
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    PathLayout string
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    PrimaryKeyConstraint IcebergTablePrimaryKeyConstraint
    Defines a table-level PRIMARY KEY constraint.
    RowAccessPolicy IcebergTableRowAccessPolicy
    Specifies the row access policy to set on a Iceberg table.
    StorageSerializationPolicy string
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    TargetFileSize string
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    UniqueConstraints List<IcebergTableUniqueConstraint>
    Defines a table-level UNIQUE constraint.
    Columns []IcebergTableColumnArgs
    Definitions of the columns to create in the table. Minimum one required.
    Database string
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Schema string
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    AggregationPolicy IcebergTableAggregationPolicyArgs
    Specifies the aggregation policy to set on a Iceberg table.
    BaseLocation string
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    Catalog string
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    CatalogSync string
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    ChangeTracking string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    CheckConstraints []IcebergTableCheckConstraintArgs
    Defines a table-level CHECK constraint.
    ClusterBies []string
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Comment string
    Specifies a comment for the Iceberg table.
    DataRetentionTimeInDays int
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    EnableDataCompaction bool
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    EnableIcebergMergeOnRead bool
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    ErrorLogging string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    ExternalVolume string
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    ForeignKeyConstraints []IcebergTableForeignKeyConstraintArgs
    Defines a table-level FOREIGN KEY constraint.
    IcebergVersion int
    Specifies the Iceberg table format version.
    MaxDataExtensionTimeInDays int
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    Name string
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    PartitionBies []IcebergTablePartitionByArgs
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    PathLayout string
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    PrimaryKeyConstraint IcebergTablePrimaryKeyConstraintArgs
    Defines a table-level PRIMARY KEY constraint.
    RowAccessPolicy IcebergTableRowAccessPolicyArgs
    Specifies the row access policy to set on a Iceberg table.
    StorageSerializationPolicy string
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    TargetFileSize string
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    UniqueConstraints []IcebergTableUniqueConstraintArgs
    Defines a table-level UNIQUE constraint.
    columns list(object)
    Definitions of the columns to create in the table. Minimum one required.
    database string
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema string
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    aggregation_policy object
    Specifies the aggregation policy to set on a Iceberg table.
    base_location string
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog string
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalog_sync string
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    change_tracking string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    check_constraints list(object)
    Defines a table-level CHECK constraint.
    cluster_bies list(string)
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment string
    Specifies a comment for the Iceberg table.
    data_retention_time_in_days number
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    enable_data_compaction bool
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enable_iceberg_merge_on_read bool
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    error_logging string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    external_volume string
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreign_key_constraints list(object)
    Defines a table-level FOREIGN KEY constraint.
    iceberg_version number
    Specifies the Iceberg table format version.
    max_data_extension_time_in_days number
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name string
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    partition_bies list(object)
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    path_layout string
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primary_key_constraint object
    Defines a table-level PRIMARY KEY constraint.
    row_access_policy object
    Specifies the row access policy to set on a Iceberg table.
    storage_serialization_policy string
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    target_file_size string
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    unique_constraints list(object)
    Defines a table-level UNIQUE constraint.
    columns List<IcebergTableColumn>
    Definitions of the columns to create in the table. Minimum one required.
    database String
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema String
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    aggregationPolicy IcebergTableAggregationPolicy
    Specifies the aggregation policy to set on a Iceberg table.
    baseLocation String
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog String
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalogSync String
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    changeTracking String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    checkConstraints List<IcebergTableCheckConstraint>
    Defines a table-level CHECK constraint.
    clusterBies List<String>
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment String
    Specifies a comment for the Iceberg table.
    dataRetentionTimeInDays Integer
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    enableDataCompaction Boolean
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enableIcebergMergeOnRead Boolean
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    errorLogging String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    externalVolume String
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreignKeyConstraints List<IcebergTableForeignKeyConstraint>
    Defines a table-level FOREIGN KEY constraint.
    icebergVersion Integer
    Specifies the Iceberg table format version.
    maxDataExtensionTimeInDays Integer
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name String
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    partitionBies List<IcebergTablePartitionBy>
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    pathLayout String
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primaryKeyConstraint IcebergTablePrimaryKeyConstraint
    Defines a table-level PRIMARY KEY constraint.
    rowAccessPolicy IcebergTableRowAccessPolicy
    Specifies the row access policy to set on a Iceberg table.
    storageSerializationPolicy String
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    targetFileSize String
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    uniqueConstraints List<IcebergTableUniqueConstraint>
    Defines a table-level UNIQUE constraint.
    columns IcebergTableColumn[]
    Definitions of the columns to create in the table. Minimum one required.
    database string
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema string
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    aggregationPolicy IcebergTableAggregationPolicy
    Specifies the aggregation policy to set on a Iceberg table.
    baseLocation string
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog string
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalogSync string
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    changeTracking string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    checkConstraints IcebergTableCheckConstraint[]
    Defines a table-level CHECK constraint.
    clusterBies string[]
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment string
    Specifies a comment for the Iceberg table.
    dataRetentionTimeInDays number
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    enableDataCompaction boolean
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enableIcebergMergeOnRead boolean
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    errorLogging string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    externalVolume string
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreignKeyConstraints IcebergTableForeignKeyConstraint[]
    Defines a table-level FOREIGN KEY constraint.
    icebergVersion number
    Specifies the Iceberg table format version.
    maxDataExtensionTimeInDays number
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name string
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    partitionBies IcebergTablePartitionBy[]
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    pathLayout string
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primaryKeyConstraint IcebergTablePrimaryKeyConstraint
    Defines a table-level PRIMARY KEY constraint.
    rowAccessPolicy IcebergTableRowAccessPolicy
    Specifies the row access policy to set on a Iceberg table.
    storageSerializationPolicy string
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    targetFileSize string
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    uniqueConstraints IcebergTableUniqueConstraint[]
    Defines a table-level UNIQUE constraint.
    columns Sequence[IcebergTableColumnArgs]
    Definitions of the columns to create in the table. Minimum one required.
    database str
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema str
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    aggregation_policy IcebergTableAggregationPolicyArgs
    Specifies the aggregation policy to set on a Iceberg table.
    base_location str
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog str
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalog_sync str
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    change_tracking str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    check_constraints Sequence[IcebergTableCheckConstraintArgs]
    Defines a table-level CHECK constraint.
    cluster_bies Sequence[str]
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment str
    Specifies a comment for the Iceberg table.
    data_retention_time_in_days int
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    enable_data_compaction bool
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enable_iceberg_merge_on_read bool
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    error_logging str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    external_volume str
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreign_key_constraints Sequence[IcebergTableForeignKeyConstraintArgs]
    Defines a table-level FOREIGN KEY constraint.
    iceberg_version int
    Specifies the Iceberg table format version.
    max_data_extension_time_in_days int
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name str
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    partition_bies Sequence[IcebergTablePartitionByArgs]
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    path_layout str
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primary_key_constraint IcebergTablePrimaryKeyConstraintArgs
    Defines a table-level PRIMARY KEY constraint.
    row_access_policy IcebergTableRowAccessPolicyArgs
    Specifies the row access policy to set on a Iceberg table.
    storage_serialization_policy str
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    target_file_size str
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    unique_constraints Sequence[IcebergTableUniqueConstraintArgs]
    Defines a table-level UNIQUE constraint.
    columns List<Property Map>
    Definitions of the columns to create in the table. Minimum one required.
    database String
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    schema String
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    aggregationPolicy Property Map
    Specifies the aggregation policy to set on a Iceberg table.
    baseLocation String
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog String
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalogSync String
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    changeTracking String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    checkConstraints List<Property Map>
    Defines a table-level CHECK constraint.
    clusterBies List<String>
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    comment String
    Specifies a comment for the Iceberg table.
    dataRetentionTimeInDays Number
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    enableDataCompaction Boolean
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enableIcebergMergeOnRead Boolean
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    errorLogging String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    externalVolume String
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreignKeyConstraints List<Property Map>
    Defines a table-level FOREIGN KEY constraint.
    icebergVersion Number
    Specifies the Iceberg table format version.
    maxDataExtensionTimeInDays Number
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name String
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    partitionBies List<Property Map>
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    pathLayout String
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primaryKeyConstraint Property Map
    Defines a table-level PRIMARY KEY constraint.
    rowAccessPolicy Property Map
    Specifies the row access policy to set on a Iceberg table.
    storageSerializationPolicy String
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    targetFileSize String
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    uniqueConstraints List<Property Map>
    Defines a table-level UNIQUE constraint.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the IcebergTable resource produces the following output properties:

    DescribeOutputs List<IcebergTableDescribeOutput>
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    FullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    Id string
    The provider-assigned unique ID for this managed resource.
    Parameters List<IcebergTableParameter>
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    ShowOutputs List<IcebergTableShowOutput>
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    DescribeOutputs []IcebergTableDescribeOutput
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    FullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    Id string
    The provider-assigned unique ID for this managed resource.
    Parameters []IcebergTableParameter
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    ShowOutputs []IcebergTableShowOutput
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    describe_outputs list(object)
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    fully_qualified_name string
    Fully qualified name of the resource. For more information, see object name resolution.
    id string
    The provider-assigned unique ID for this managed resource.
    parameters list(object)
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    show_outputs list(object)
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    describeOutputs List<IcebergTableDescribeOutput>
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    fullyQualifiedName String
    Fully qualified name of the resource. For more information, see object name resolution.
    id String
    The provider-assigned unique ID for this managed resource.
    parameters List<IcebergTableParameter>
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    showOutputs List<IcebergTableShowOutput>
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    describeOutputs IcebergTableDescribeOutput[]
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    fullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    id string
    The provider-assigned unique ID for this managed resource.
    parameters IcebergTableParameter[]
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    showOutputs IcebergTableShowOutput[]
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    describe_outputs Sequence[IcebergTableDescribeOutput]
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    fully_qualified_name str
    Fully qualified name of the resource. For more information, see object name resolution.
    id str
    The provider-assigned unique ID for this managed resource.
    parameters Sequence[IcebergTableParameter]
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    show_outputs Sequence[IcebergTableShowOutput]
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    describeOutputs List<Property Map>
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    fullyQualifiedName String
    Fully qualified name of the resource. For more information, see object name resolution.
    id String
    The provider-assigned unique ID for this managed resource.
    parameters List<Property Map>
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    showOutputs List<Property Map>
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.

    Look up Existing IcebergTable Resource

    Get an existing IcebergTable resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: IcebergTableState, opts?: CustomResourceOptions): IcebergTable
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            aggregation_policy: Optional[IcebergTableAggregationPolicyArgs] = None,
            base_location: Optional[str] = None,
            catalog: Optional[str] = None,
            catalog_sync: Optional[str] = None,
            change_tracking: Optional[str] = None,
            check_constraints: Optional[Sequence[IcebergTableCheckConstraintArgs]] = None,
            cluster_bies: Optional[Sequence[str]] = None,
            columns: Optional[Sequence[IcebergTableColumnArgs]] = None,
            comment: Optional[str] = None,
            data_retention_time_in_days: Optional[int] = None,
            database: Optional[str] = None,
            describe_outputs: Optional[Sequence[IcebergTableDescribeOutputArgs]] = None,
            enable_data_compaction: Optional[bool] = None,
            enable_iceberg_merge_on_read: Optional[bool] = None,
            error_logging: Optional[str] = None,
            external_volume: Optional[str] = None,
            foreign_key_constraints: Optional[Sequence[IcebergTableForeignKeyConstraintArgs]] = None,
            fully_qualified_name: Optional[str] = None,
            iceberg_version: Optional[int] = None,
            max_data_extension_time_in_days: Optional[int] = None,
            name: Optional[str] = None,
            parameters: Optional[Sequence[IcebergTableParameterArgs]] = None,
            partition_bies: Optional[Sequence[IcebergTablePartitionByArgs]] = None,
            path_layout: Optional[str] = None,
            primary_key_constraint: Optional[IcebergTablePrimaryKeyConstraintArgs] = None,
            row_access_policy: Optional[IcebergTableRowAccessPolicyArgs] = None,
            schema: Optional[str] = None,
            show_outputs: Optional[Sequence[IcebergTableShowOutputArgs]] = None,
            storage_serialization_policy: Optional[str] = None,
            target_file_size: Optional[str] = None,
            unique_constraints: Optional[Sequence[IcebergTableUniqueConstraintArgs]] = None) -> IcebergTable
    func GetIcebergTable(ctx *Context, name string, id IDInput, state *IcebergTableState, opts ...ResourceOption) (*IcebergTable, error)
    public static IcebergTable Get(string name, Input<string> id, IcebergTableState? state, CustomResourceOptions? opts = null)
    public static IcebergTable get(String name, Output<String> id, IcebergTableState state, CustomResourceOptions options)
    resources:  _:    type: snowflake:IcebergTable    get:      id: ${id}
    import {
      to = snowflake_iceberg_table.example
      id = "${id}"
    }
    
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AggregationPolicy IcebergTableAggregationPolicy
    Specifies the aggregation policy to set on a Iceberg table.
    BaseLocation string
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    Catalog string
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    CatalogSync string
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    ChangeTracking string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    CheckConstraints List<IcebergTableCheckConstraint>
    Defines a table-level CHECK constraint.
    ClusterBies List<string>
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Columns List<IcebergTableColumn>
    Definitions of the columns to create in the table. Minimum one required.
    Comment string
    Specifies a comment for the Iceberg table.
    DataRetentionTimeInDays int
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    Database string
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    DescribeOutputs List<IcebergTableDescribeOutput>
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    EnableDataCompaction bool
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    EnableIcebergMergeOnRead bool
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    ErrorLogging string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    ExternalVolume string
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    ForeignKeyConstraints List<IcebergTableForeignKeyConstraint>
    Defines a table-level FOREIGN KEY constraint.
    FullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    IcebergVersion int
    Specifies the Iceberg table format version.
    MaxDataExtensionTimeInDays int
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    Name string
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Parameters List<IcebergTableParameter>
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    PartitionBies List<IcebergTablePartitionBy>
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    PathLayout string
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    PrimaryKeyConstraint IcebergTablePrimaryKeyConstraint
    Defines a table-level PRIMARY KEY constraint.
    RowAccessPolicy IcebergTableRowAccessPolicy
    Specifies the row access policy to set on a Iceberg table.
    Schema string
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    ShowOutputs List<IcebergTableShowOutput>
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    StorageSerializationPolicy string
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    TargetFileSize string
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    UniqueConstraints List<IcebergTableUniqueConstraint>
    Defines a table-level UNIQUE constraint.
    AggregationPolicy IcebergTableAggregationPolicyArgs
    Specifies the aggregation policy to set on a Iceberg table.
    BaseLocation string
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    Catalog string
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    CatalogSync string
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    ChangeTracking string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    CheckConstraints []IcebergTableCheckConstraintArgs
    Defines a table-level CHECK constraint.
    ClusterBies []string
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    Columns []IcebergTableColumnArgs
    Definitions of the columns to create in the table. Minimum one required.
    Comment string
    Specifies a comment for the Iceberg table.
    DataRetentionTimeInDays int
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    Database string
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    DescribeOutputs []IcebergTableDescribeOutputArgs
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    EnableDataCompaction bool
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    EnableIcebergMergeOnRead bool
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    ErrorLogging string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    ExternalVolume string
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    ForeignKeyConstraints []IcebergTableForeignKeyConstraintArgs
    Defines a table-level FOREIGN KEY constraint.
    FullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    IcebergVersion int
    Specifies the Iceberg table format version.
    MaxDataExtensionTimeInDays int
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    Name string
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    Parameters []IcebergTableParameterArgs
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    PartitionBies []IcebergTablePartitionByArgs
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    PathLayout string
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    PrimaryKeyConstraint IcebergTablePrimaryKeyConstraintArgs
    Defines a table-level PRIMARY KEY constraint.
    RowAccessPolicy IcebergTableRowAccessPolicyArgs
    Specifies the row access policy to set on a Iceberg table.
    Schema string
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    ShowOutputs []IcebergTableShowOutputArgs
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    StorageSerializationPolicy string
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    TargetFileSize string
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    UniqueConstraints []IcebergTableUniqueConstraintArgs
    Defines a table-level UNIQUE constraint.
    aggregation_policy object
    Specifies the aggregation policy to set on a Iceberg table.
    base_location string
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog string
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalog_sync string
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    change_tracking string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    check_constraints list(object)
    Defines a table-level CHECK constraint.
    cluster_bies list(string)
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    columns list(object)
    Definitions of the columns to create in the table. Minimum one required.
    comment string
    Specifies a comment for the Iceberg table.
    data_retention_time_in_days number
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    database string
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    describe_outputs list(object)
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    enable_data_compaction bool
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enable_iceberg_merge_on_read bool
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    error_logging string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    external_volume string
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreign_key_constraints list(object)
    Defines a table-level FOREIGN KEY constraint.
    fully_qualified_name string
    Fully qualified name of the resource. For more information, see object name resolution.
    iceberg_version number
    Specifies the Iceberg table format version.
    max_data_extension_time_in_days number
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name string
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    parameters list(object)
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    partition_bies list(object)
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    path_layout string
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primary_key_constraint object
    Defines a table-level PRIMARY KEY constraint.
    row_access_policy object
    Specifies the row access policy to set on a Iceberg table.
    schema string
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    show_outputs list(object)
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    storage_serialization_policy string
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    target_file_size string
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    unique_constraints list(object)
    Defines a table-level UNIQUE constraint.
    aggregationPolicy IcebergTableAggregationPolicy
    Specifies the aggregation policy to set on a Iceberg table.
    baseLocation String
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog String
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalogSync String
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    changeTracking String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    checkConstraints List<IcebergTableCheckConstraint>
    Defines a table-level CHECK constraint.
    clusterBies List<String>
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    columns List<IcebergTableColumn>
    Definitions of the columns to create in the table. Minimum one required.
    comment String
    Specifies a comment for the Iceberg table.
    dataRetentionTimeInDays Integer
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    database String
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    describeOutputs List<IcebergTableDescribeOutput>
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    enableDataCompaction Boolean
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enableIcebergMergeOnRead Boolean
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    errorLogging String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    externalVolume String
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreignKeyConstraints List<IcebergTableForeignKeyConstraint>
    Defines a table-level FOREIGN KEY constraint.
    fullyQualifiedName String
    Fully qualified name of the resource. For more information, see object name resolution.
    icebergVersion Integer
    Specifies the Iceberg table format version.
    maxDataExtensionTimeInDays Integer
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name String
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    parameters List<IcebergTableParameter>
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    partitionBies List<IcebergTablePartitionBy>
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    pathLayout String
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primaryKeyConstraint IcebergTablePrimaryKeyConstraint
    Defines a table-level PRIMARY KEY constraint.
    rowAccessPolicy IcebergTableRowAccessPolicy
    Specifies the row access policy to set on a Iceberg table.
    schema String
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    showOutputs List<IcebergTableShowOutput>
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    storageSerializationPolicy String
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    targetFileSize String
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    uniqueConstraints List<IcebergTableUniqueConstraint>
    Defines a table-level UNIQUE constraint.
    aggregationPolicy IcebergTableAggregationPolicy
    Specifies the aggregation policy to set on a Iceberg table.
    baseLocation string
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog string
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalogSync string
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    changeTracking string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    checkConstraints IcebergTableCheckConstraint[]
    Defines a table-level CHECK constraint.
    clusterBies string[]
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    columns IcebergTableColumn[]
    Definitions of the columns to create in the table. Minimum one required.
    comment string
    Specifies a comment for the Iceberg table.
    dataRetentionTimeInDays number
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    database string
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    describeOutputs IcebergTableDescribeOutput[]
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    enableDataCompaction boolean
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enableIcebergMergeOnRead boolean
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    errorLogging string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    externalVolume string
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreignKeyConstraints IcebergTableForeignKeyConstraint[]
    Defines a table-level FOREIGN KEY constraint.
    fullyQualifiedName string
    Fully qualified name of the resource. For more information, see object name resolution.
    icebergVersion number
    Specifies the Iceberg table format version.
    maxDataExtensionTimeInDays number
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name string
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    parameters IcebergTableParameter[]
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    partitionBies IcebergTablePartitionBy[]
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    pathLayout string
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primaryKeyConstraint IcebergTablePrimaryKeyConstraint
    Defines a table-level PRIMARY KEY constraint.
    rowAccessPolicy IcebergTableRowAccessPolicy
    Specifies the row access policy to set on a Iceberg table.
    schema string
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    showOutputs IcebergTableShowOutput[]
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    storageSerializationPolicy string
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    targetFileSize string
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    uniqueConstraints IcebergTableUniqueConstraint[]
    Defines a table-level UNIQUE constraint.
    aggregation_policy IcebergTableAggregationPolicyArgs
    Specifies the aggregation policy to set on a Iceberg table.
    base_location str
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog str
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalog_sync str
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    change_tracking str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    check_constraints Sequence[IcebergTableCheckConstraintArgs]
    Defines a table-level CHECK constraint.
    cluster_bies Sequence[str]
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    columns Sequence[IcebergTableColumnArgs]
    Definitions of the columns to create in the table. Minimum one required.
    comment str
    Specifies a comment for the Iceberg table.
    data_retention_time_in_days int
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    database str
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    describe_outputs Sequence[IcebergTableDescribeOutputArgs]
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    enable_data_compaction bool
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enable_iceberg_merge_on_read bool
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    error_logging str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    external_volume str
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreign_key_constraints Sequence[IcebergTableForeignKeyConstraintArgs]
    Defines a table-level FOREIGN KEY constraint.
    fully_qualified_name str
    Fully qualified name of the resource. For more information, see object name resolution.
    iceberg_version int
    Specifies the Iceberg table format version.
    max_data_extension_time_in_days int
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name str
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    parameters Sequence[IcebergTableParameterArgs]
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    partition_bies Sequence[IcebergTablePartitionByArgs]
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    path_layout str
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primary_key_constraint IcebergTablePrimaryKeyConstraintArgs
    Defines a table-level PRIMARY KEY constraint.
    row_access_policy IcebergTableRowAccessPolicyArgs
    Specifies the row access policy to set on a Iceberg table.
    schema str
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    show_outputs Sequence[IcebergTableShowOutputArgs]
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    storage_serialization_policy str
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    target_file_size str
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    unique_constraints Sequence[IcebergTableUniqueConstraintArgs]
    Defines a table-level UNIQUE constraint.
    aggregationPolicy Property Map
    Specifies the aggregation policy to set on a Iceberg table.
    baseLocation String
    The path to a directory where Snowflake can write data and metadata files for the Iceberg table. Specify a relative path from the table's EXTERNAL_VOLUME location.
    catalog String
    Specifies the identifier for the catalog integration to use for the Iceberg table. If not specified, the account-level default is used.
    catalogSync String
    Specifies the name of the catalog integration that Snowflake uses to automatically synchronize the Iceberg table with an external catalog. For more information, check CATALOG_SYNC docs.
    changeTracking String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether to enable change tracking on the Iceberg table. Cannot be changed after creation. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    checkConstraints List<Property Map>
    Defines a table-level CHECK constraint.
    clusterBies List<String>
    A list of one or more table columns/expressions to be used as clustering key(s) for the table. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    columns List<Property Map>
    Definitions of the columns to create in the table. Minimum one required.
    comment String
    Specifies a comment for the Iceberg table.
    dataRetentionTimeInDays Number
    Specifies the retention period for the Iceberg table so that Time Travel actions can be performed on historical data. For more information, check DATARETENTIONTIMEINDAYS docs.
    database String
    The database in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    describeOutputs List<Property Map>
    Outputs the result of DESCRIBE ICEBERG TABLE for the given Iceberg table.
    enableDataCompaction Boolean
    Specifies whether automatic background data compaction is enabled for the Iceberg table. For more information, check ENABLEDATACOMPACTION docs.
    enableIcebergMergeOnRead Boolean
    Specifies whether merge-on-read is enabled for the Iceberg table. For more information, check ENABLEICEBERGMERGEONREAD docs.
    errorLogging String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Specifies whether error logging is enabled for the Iceberg table. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    externalVolume String
    Specifies the identifier for the external volume where the Iceberg table stores its metadata files and data in Parquet format. If not specified, the account-level default is used.
    foreignKeyConstraints List<Property Map>
    Defines a table-level FOREIGN KEY constraint.
    fullyQualifiedName String
    Fully qualified name of the resource. For more information, see object name resolution.
    icebergVersion Number
    Specifies the Iceberg table format version.
    maxDataExtensionTimeInDays Number
    Specifies the maximum number of days for which Snowflake can extend the data retention period for the Iceberg table to prevent streams on the table from becoming stale. For more information, check MAXDATAEXTENSIONTIMEIN_DAYS docs.
    name String
    Specifies the identifier for the Iceberg table; must be unique for the schema in which the Iceberg table is created. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    parameters List<Property Map>
    Outputs the result of SHOW PARAMETERS IN ICEBERG TABLE for the given Iceberg table.
    partitionBies List<Property Map>
    Defines the partitioning for the Iceberg table. Cannot be changed after creation. Exactly one of identity, bucket, truncate, year, month, day, or hour must be set for each entry. Cannot be used together with clusterBy.
    pathLayout String
    Specifies the storage layout for the Iceberg table's Parquet files. Valid values are: [FLAT HIERARCHICAL]. Cannot be changed after creation. External changes for this field won't be detected. In case you want to apply external changes, you can re-create the resource manually using "terraform taint".
    primaryKeyConstraint Property Map
    Defines a table-level PRIMARY KEY constraint.
    rowAccessPolicy Property Map
    Specifies the row access policy to set on a Iceberg table.
    schema String
    The schema in which to create the Iceberg table. Due to technical limitations (read more here), avoid using the following characters: |, ., ".
    showOutputs List<Property Map>
    Outputs the result of SHOW ICEBERG TABLES for the given Iceberg table. Note that this value will be only recomputed whenever values of fields affecting the output change.
    storageSerializationPolicy String
    Specifies the storage serialization policy for the Iceberg table. Valid values are: [COMPATIBLE OPTIMIZED]. Cannot be changed after creation. For more information, check STORAGESERIALIZATIONPOLICY docs.
    targetFileSize String
    Specifies the target file size (in bytes) used when writing the Iceberg table's Parquet files. Valid values are: [AUTO 16MB 32MB 64MB 128MB]. For more information, check TARGETFILESIZE docs.
    uniqueConstraints List<Property Map>
    Defines a table-level UNIQUE constraint.

    Supporting Types

    IcebergTableAggregationPolicy, IcebergTableAggregationPolicyArgs

    PolicyName string
    Aggregation policy name.
    EntityKeys List<string>
    Defines which columns uniquely identify an entity within the Iceberg table.
    PolicyName string
    Aggregation policy name.
    EntityKeys []string
    Defines which columns uniquely identify an entity within the Iceberg table.
    policy_name string
    Aggregation policy name.
    entity_keys list(string)
    Defines which columns uniquely identify an entity within the Iceberg table.
    policyName String
    Aggregation policy name.
    entityKeys List<String>
    Defines which columns uniquely identify an entity within the Iceberg table.
    policyName string
    Aggregation policy name.
    entityKeys string[]
    Defines which columns uniquely identify an entity within the Iceberg table.
    policy_name str
    Aggregation policy name.
    entity_keys Sequence[str]
    Defines which columns uniquely identify an entity within the Iceberg table.
    policyName String
    Aggregation policy name.
    entityKeys List<String>
    Defines which columns uniquely identify an entity within the Iceberg table.

    IcebergTableCheckConstraint, IcebergTableCheckConstraintArgs

    Expression string
    The CHECK constraint expression.
    Name string
    Name of the constraint.
    Validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether existing data is validated against the constraint (true, ENABLE VALIDATE) or not (false, ENABLE NOVALIDATE). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Expression string
    The CHECK constraint expression.
    Name string
    Name of the constraint.
    Validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether existing data is validated against the constraint (true, ENABLE VALIDATE) or not (false, ENABLE NOVALIDATE). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    expression string
    The CHECK constraint expression.
    name string
    Name of the constraint.
    validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether existing data is validated against the constraint (true, ENABLE VALIDATE) or not (false, ENABLE NOVALIDATE). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    expression String
    The CHECK constraint expression.
    name String
    Name of the constraint.
    validate String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether existing data is validated against the constraint (true, ENABLE VALIDATE) or not (false, ENABLE NOVALIDATE). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    expression string
    The CHECK constraint expression.
    name string
    Name of the constraint.
    validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether existing data is validated against the constraint (true, ENABLE VALIDATE) or not (false, ENABLE NOVALIDATE). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    expression str
    The CHECK constraint expression.
    name str
    Name of the constraint.
    validate str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether existing data is validated against the constraint (true, ENABLE VALIDATE) or not (false, ENABLE NOVALIDATE). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    expression String
    The CHECK constraint expression.
    name String
    Name of the constraint.
    validate String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether existing data is validated against the constraint (true, ENABLE VALIDATE) or not (false, ENABLE NOVALIDATE). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.

    IcebergTableColumn, IcebergTableColumnArgs

    Name string
    Column name.
    Type string
    Column type, e.g. VARIANT. For a full list of column types, see Summary of Data Types.
    Comment string
    Column comment.
    Default IcebergTableColumnDefault
    Defines the column default value.
    MaskingPolicy IcebergTableColumnMaskingPolicy
    Specifies the masking policy to set on a column. For more information about this resource, see docs.
    NotNull string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to restrict the column to NOT NULL values.
    ProjectionPolicy IcebergTableColumnProjectionPolicy
    Specifies the projection policy to set on a column.
    Name string
    Column name.
    Type string
    Column type, e.g. VARIANT. For a full list of column types, see Summary of Data Types.
    Comment string
    Column comment.
    Default IcebergTableColumnDefault
    Defines the column default value.
    MaskingPolicy IcebergTableColumnMaskingPolicy
    Specifies the masking policy to set on a column. For more information about this resource, see docs.
    NotNull string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to restrict the column to NOT NULL values.
    ProjectionPolicy IcebergTableColumnProjectionPolicy
    Specifies the projection policy to set on a column.
    name string
    Column name.
    type string
    Column type, e.g. VARIANT. For a full list of column types, see Summary of Data Types.
    comment string
    Column comment.
    default object
    Defines the column default value.
    masking_policy object
    Specifies the masking policy to set on a column. For more information about this resource, see docs.
    not_null string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to restrict the column to NOT NULL values.
    projection_policy object
    Specifies the projection policy to set on a column.
    name String
    Column name.
    type String
    Column type, e.g. VARIANT. For a full list of column types, see Summary of Data Types.
    comment String
    Column comment.
    default_ IcebergTableColumnDefault
    Defines the column default value.
    maskingPolicy IcebergTableColumnMaskingPolicy
    Specifies the masking policy to set on a column. For more information about this resource, see docs.
    notNull String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to restrict the column to NOT NULL values.
    projectionPolicy IcebergTableColumnProjectionPolicy
    Specifies the projection policy to set on a column.
    name string
    Column name.
    type string
    Column type, e.g. VARIANT. For a full list of column types, see Summary of Data Types.
    comment string
    Column comment.
    default IcebergTableColumnDefault
    Defines the column default value.
    maskingPolicy IcebergTableColumnMaskingPolicy
    Specifies the masking policy to set on a column. For more information about this resource, see docs.
    notNull string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to restrict the column to NOT NULL values.
    projectionPolicy IcebergTableColumnProjectionPolicy
    Specifies the projection policy to set on a column.
    name str
    Column name.
    type str
    Column type, e.g. VARIANT. For a full list of column types, see Summary of Data Types.
    comment str
    Column comment.
    default IcebergTableColumnDefault
    Defines the column default value.
    masking_policy IcebergTableColumnMaskingPolicy
    Specifies the masking policy to set on a column. For more information about this resource, see docs.
    not_null str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to restrict the column to NOT NULL values.
    projection_policy IcebergTableColumnProjectionPolicy
    Specifies the projection policy to set on a column.
    name String
    Column name.
    type String
    Column type, e.g. VARIANT. For a full list of column types, see Summary of Data Types.
    comment String
    Column comment.
    default Property Map
    Defines the column default value.
    maskingPolicy Property Map
    Specifies the masking policy to set on a column. For more information about this resource, see docs.
    notNull String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to restrict the column to NOT NULL values.
    projectionPolicy Property Map
    Specifies the projection policy to set on a column.

    IcebergTableColumnDefault, IcebergTableColumnDefaultArgs

    Expression string
    The default expression value for the column.
    Expression string
    The default expression value for the column.
    expression string
    The default expression value for the column.
    expression String
    The default expression value for the column.
    expression string
    The default expression value for the column.
    expression str
    The default expression value for the column.
    expression String
    The default expression value for the column.

    IcebergTableColumnMaskingPolicy, IcebergTableColumnMaskingPolicyArgs

    PolicyName string
    Masking policy name. For more information about this resource, see docs.
    Usings List<string>
    Specifies the arguments to pass into the conditional masking policy SQL expression, in order. The first column in the list specifies the column for the policy conditions to mask or tokenize the data and must match the column to which the masking policy is set. The additional columns specify the columns to evaluate to determine whether to mask or tokenize the data in each row of the query result when a query is made on the first column. If the USING clause is omitted, Snowflake treats the conditional masking policy as a normal masking policy.
    PolicyName string
    Masking policy name. For more information about this resource, see docs.
    Usings []string
    Specifies the arguments to pass into the conditional masking policy SQL expression, in order. The first column in the list specifies the column for the policy conditions to mask or tokenize the data and must match the column to which the masking policy is set. The additional columns specify the columns to evaluate to determine whether to mask or tokenize the data in each row of the query result when a query is made on the first column. If the USING clause is omitted, Snowflake treats the conditional masking policy as a normal masking policy.
    policy_name string
    Masking policy name. For more information about this resource, see docs.
    usings list(string)
    Specifies the arguments to pass into the conditional masking policy SQL expression, in order. The first column in the list specifies the column for the policy conditions to mask or tokenize the data and must match the column to which the masking policy is set. The additional columns specify the columns to evaluate to determine whether to mask or tokenize the data in each row of the query result when a query is made on the first column. If the USING clause is omitted, Snowflake treats the conditional masking policy as a normal masking policy.
    policyName String
    Masking policy name. For more information about this resource, see docs.
    usings List<String>
    Specifies the arguments to pass into the conditional masking policy SQL expression, in order. The first column in the list specifies the column for the policy conditions to mask or tokenize the data and must match the column to which the masking policy is set. The additional columns specify the columns to evaluate to determine whether to mask or tokenize the data in each row of the query result when a query is made on the first column. If the USING clause is omitted, Snowflake treats the conditional masking policy as a normal masking policy.
    policyName string
    Masking policy name. For more information about this resource, see docs.
    usings string[]
    Specifies the arguments to pass into the conditional masking policy SQL expression, in order. The first column in the list specifies the column for the policy conditions to mask or tokenize the data and must match the column to which the masking policy is set. The additional columns specify the columns to evaluate to determine whether to mask or tokenize the data in each row of the query result when a query is made on the first column. If the USING clause is omitted, Snowflake treats the conditional masking policy as a normal masking policy.
    policy_name str
    Masking policy name. For more information about this resource, see docs.
    usings Sequence[str]
    Specifies the arguments to pass into the conditional masking policy SQL expression, in order. The first column in the list specifies the column for the policy conditions to mask or tokenize the data and must match the column to which the masking policy is set. The additional columns specify the columns to evaluate to determine whether to mask or tokenize the data in each row of the query result when a query is made on the first column. If the USING clause is omitted, Snowflake treats the conditional masking policy as a normal masking policy.
    policyName String
    Masking policy name. For more information about this resource, see docs.
    usings List<String>
    Specifies the arguments to pass into the conditional masking policy SQL expression, in order. The first column in the list specifies the column for the policy conditions to mask or tokenize the data and must match the column to which the masking policy is set. The additional columns specify the columns to evaluate to determine whether to mask or tokenize the data in each row of the query result when a query is made on the first column. If the USING clause is omitted, Snowflake treats the conditional masking policy as a normal masking policy.

    IcebergTableColumnProjectionPolicy, IcebergTableColumnProjectionPolicyArgs

    PolicyName string
    Projection policy name.
    PolicyName string
    Projection policy name.
    policy_name string
    Projection policy name.
    policyName String
    Projection policy name.
    policyName string
    Projection policy name.
    policy_name str
    Projection policy name.
    policyName String
    Projection policy name.

    IcebergTableDescribeOutput, IcebergTableDescribeOutputArgs

    Check string
    Comment string
    Default string
    Expression string
    IsNullable bool
    Kind string
    Name string
    NameMapping string
    PolicyName string
    PrimaryKey bool
    PrivacyDomain string
    SourceIcebergType string
    Type string
    UniqueKey bool
    WriteDefault string
    Check string
    Comment string
    Default string
    Expression string
    IsNullable bool
    Kind string
    Name string
    NameMapping string
    PolicyName string
    PrimaryKey bool
    PrivacyDomain string
    SourceIcebergType string
    Type string
    UniqueKey bool
    WriteDefault string
    check string
    comment string
    default string
    expression string
    is_nullable bool
    kind string
    name string
    name_mapping string
    policy_name string
    primary_key bool
    privacy_domain string
    source_iceberg_type string
    type string
    unique_key bool
    write_default string
    check String
    comment String
    default_ String
    expression String
    isNullable Boolean
    kind String
    name String
    nameMapping String
    policyName String
    primaryKey Boolean
    privacyDomain String
    sourceIcebergType String
    type String
    uniqueKey Boolean
    writeDefault String
    check string
    comment string
    default string
    expression string
    isNullable boolean
    kind string
    name string
    nameMapping string
    policyName string
    primaryKey boolean
    privacyDomain string
    sourceIcebergType string
    type string
    uniqueKey boolean
    writeDefault string
    check String
    comment String
    default String
    expression String
    isNullable Boolean
    kind String
    name String
    nameMapping String
    policyName String
    primaryKey Boolean
    privacyDomain String
    sourceIcebergType String
    type String
    uniqueKey Boolean
    writeDefault String

    IcebergTableForeignKeyConstraint, IcebergTableForeignKeyConstraintArgs

    Columns List<string>
    The local column(s) the foreign key is defined on.
    TableName string
    The table that the foreign key references.
    Comment string
    Constraint comment.
    Deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    InitiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Match string
    The match type for the foreign key. Valid values are: [FULL SIMPLE PARTIAL].
    Name string
    Name of the constraint.
    OnDelete string
    Specifies the action to perform when the referenced primary/unique key is deleted. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    OnUpdate string
    Specifies the action to perform when the referenced primary/unique key is updated. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    RefColumns List<string>
    The column(s) in the referenced table that the foreign key references.
    Rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Columns []string
    The local column(s) the foreign key is defined on.
    TableName string
    The table that the foreign key references.
    Comment string
    Constraint comment.
    Deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    InitiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Match string
    The match type for the foreign key. Valid values are: [FULL SIMPLE PARTIAL].
    Name string
    Name of the constraint.
    OnDelete string
    Specifies the action to perform when the referenced primary/unique key is deleted. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    OnUpdate string
    Specifies the action to perform when the referenced primary/unique key is updated. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    RefColumns []string
    The column(s) in the referenced table that the foreign key references.
    Rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns list(string)
    The local column(s) the foreign key is defined on.
    table_name string
    The table that the foreign key references.
    comment string
    Constraint comment.
    deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initially_deferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    match string
    The match type for the foreign key. Valid values are: [FULL SIMPLE PARTIAL].
    name string
    Name of the constraint.
    on_delete string
    Specifies the action to perform when the referenced primary/unique key is deleted. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    on_update string
    Specifies the action to perform when the referenced primary/unique key is updated. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    ref_columns list(string)
    The column(s) in the referenced table that the foreign key references.
    rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns List<String>
    The local column(s) the foreign key is defined on.
    tableName String
    The table that the foreign key references.
    comment String
    Constraint comment.
    deferrable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    match String
    The match type for the foreign key. Valid values are: [FULL SIMPLE PARTIAL].
    name String
    Name of the constraint.
    onDelete String
    Specifies the action to perform when the referenced primary/unique key is deleted. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    onUpdate String
    Specifies the action to perform when the referenced primary/unique key is updated. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    refColumns List<String>
    The column(s) in the referenced table that the foreign key references.
    rely String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns string[]
    The local column(s) the foreign key is defined on.
    tableName string
    The table that the foreign key references.
    comment string
    Constraint comment.
    deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    match string
    The match type for the foreign key. Valid values are: [FULL SIMPLE PARTIAL].
    name string
    Name of the constraint.
    onDelete string
    Specifies the action to perform when the referenced primary/unique key is deleted. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    onUpdate string
    Specifies the action to perform when the referenced primary/unique key is updated. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    refColumns string[]
    The column(s) in the referenced table that the foreign key references.
    rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns Sequence[str]
    The local column(s) the foreign key is defined on.
    table_name str
    The table that the foreign key references.
    comment str
    Constraint comment.
    deferrable str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initially_deferred str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    match str
    The match type for the foreign key. Valid values are: [FULL SIMPLE PARTIAL].
    name str
    Name of the constraint.
    on_delete str
    Specifies the action to perform when the referenced primary/unique key is deleted. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    on_update str
    Specifies the action to perform when the referenced primary/unique key is updated. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    ref_columns Sequence[str]
    The column(s) in the referenced table that the foreign key references.
    rely str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns List<String>
    The local column(s) the foreign key is defined on.
    tableName String
    The table that the foreign key references.
    comment String
    Constraint comment.
    deferrable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    match String
    The match type for the foreign key. Valid values are: [FULL SIMPLE PARTIAL].
    name String
    Name of the constraint.
    onDelete String
    Specifies the action to perform when the referenced primary/unique key is deleted. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    onUpdate String
    Specifies the action to perform when the referenced primary/unique key is updated. Valid values are: [CASCADE SET NULL SET DEFAULT RESTRICT NO ACTION].
    refColumns List<String>
    The column(s) in the referenced table that the foreign key references.
    rely String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.

    IcebergTableParameter, IcebergTableParameterArgs

    IcebergTableParameterCatalog, IcebergTableParameterCatalogArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTableParameterCatalogSync, IcebergTableParameterCatalogSyncArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTableParameterDataRetentionTimeInDay, IcebergTableParameterDataRetentionTimeInDayArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTableParameterEnableDataCompaction, IcebergTableParameterEnableDataCompactionArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTableParameterEnableIcebergMergeOnRead, IcebergTableParameterEnableIcebergMergeOnReadArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTableParameterExternalVolume, IcebergTableParameterExternalVolumeArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTableParameterMaxDataExtensionTimeInDay, IcebergTableParameterMaxDataExtensionTimeInDayArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTableParameterStorageSerializationPolicy, IcebergTableParameterStorageSerializationPolicyArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTableParameterTargetFileSize, IcebergTableParameterTargetFileSizeArgs

    Default string
    Description string
    Key string
    Level string
    Value string
    Default string
    Description string
    Key string
    Level string
    Value string
    default string
    description string
    key string
    level string
    value string
    default_ String
    description String
    key String
    level String
    value String
    default string
    description string
    key string
    level string
    value string
    default String
    description String
    key String
    level String
    value String

    IcebergTablePartitionBy, IcebergTablePartitionByArgs

    Bucket IcebergTablePartitionByBucket
    Partitions the table by hashing the column into a fixed number of buckets.
    Day string
    Partitions the table by the day component of the column.
    Hour string
    Partitions the table by the hour component of the column.
    Identity string
    Name of the column to use as-is for partitioning.
    Month string
    Partitions the table by the month component of the column.
    Truncate IcebergTablePartitionByTruncate
    Partitions the table by truncating the column value to a fixed width.
    Year string
    Partitions the table by the year component of the column.
    Bucket IcebergTablePartitionByBucket
    Partitions the table by hashing the column into a fixed number of buckets.
    Day string
    Partitions the table by the day component of the column.
    Hour string
    Partitions the table by the hour component of the column.
    Identity string
    Name of the column to use as-is for partitioning.
    Month string
    Partitions the table by the month component of the column.
    Truncate IcebergTablePartitionByTruncate
    Partitions the table by truncating the column value to a fixed width.
    Year string
    Partitions the table by the year component of the column.
    bucket object
    Partitions the table by hashing the column into a fixed number of buckets.
    day string
    Partitions the table by the day component of the column.
    hour string
    Partitions the table by the hour component of the column.
    identity string
    Name of the column to use as-is for partitioning.
    month string
    Partitions the table by the month component of the column.
    truncate object
    Partitions the table by truncating the column value to a fixed width.
    year string
    Partitions the table by the year component of the column.
    bucket IcebergTablePartitionByBucket
    Partitions the table by hashing the column into a fixed number of buckets.
    day String
    Partitions the table by the day component of the column.
    hour String
    Partitions the table by the hour component of the column.
    identity String
    Name of the column to use as-is for partitioning.
    month String
    Partitions the table by the month component of the column.
    truncate IcebergTablePartitionByTruncate
    Partitions the table by truncating the column value to a fixed width.
    year String
    Partitions the table by the year component of the column.
    bucket IcebergTablePartitionByBucket
    Partitions the table by hashing the column into a fixed number of buckets.
    day string
    Partitions the table by the day component of the column.
    hour string
    Partitions the table by the hour component of the column.
    identity string
    Name of the column to use as-is for partitioning.
    month string
    Partitions the table by the month component of the column.
    truncate IcebergTablePartitionByTruncate
    Partitions the table by truncating the column value to a fixed width.
    year string
    Partitions the table by the year component of the column.
    bucket IcebergTablePartitionByBucket
    Partitions the table by hashing the column into a fixed number of buckets.
    day str
    Partitions the table by the day component of the column.
    hour str
    Partitions the table by the hour component of the column.
    identity str
    Name of the column to use as-is for partitioning.
    month str
    Partitions the table by the month component of the column.
    truncate IcebergTablePartitionByTruncate
    Partitions the table by truncating the column value to a fixed width.
    year str
    Partitions the table by the year component of the column.
    bucket Property Map
    Partitions the table by hashing the column into a fixed number of buckets.
    day String
    Partitions the table by the day component of the column.
    hour String
    Partitions the table by the hour component of the column.
    identity String
    Name of the column to use as-is for partitioning.
    month String
    Partitions the table by the month component of the column.
    truncate Property Map
    Partitions the table by truncating the column value to a fixed width.
    year String
    Partitions the table by the year component of the column.

    IcebergTablePartitionByBucket, IcebergTablePartitionByBucketArgs

    Column string
    Name of the column to bucket.
    NumBuckets int
    Number of buckets to hash the column values into.
    Column string
    Name of the column to bucket.
    NumBuckets int
    Number of buckets to hash the column values into.
    column string
    Name of the column to bucket.
    num_buckets number
    Number of buckets to hash the column values into.
    column String
    Name of the column to bucket.
    numBuckets Integer
    Number of buckets to hash the column values into.
    column string
    Name of the column to bucket.
    numBuckets number
    Number of buckets to hash the column values into.
    column str
    Name of the column to bucket.
    num_buckets int
    Number of buckets to hash the column values into.
    column String
    Name of the column to bucket.
    numBuckets Number
    Number of buckets to hash the column values into.

    IcebergTablePartitionByTruncate, IcebergTablePartitionByTruncateArgs

    Column string
    Name of the column to truncate.
    Width int
    Width to truncate the column value to.
    Column string
    Name of the column to truncate.
    Width int
    Width to truncate the column value to.
    column string
    Name of the column to truncate.
    width number
    Width to truncate the column value to.
    column String
    Name of the column to truncate.
    width Integer
    Width to truncate the column value to.
    column string
    Name of the column to truncate.
    width number
    Width to truncate the column value to.
    column str
    Name of the column to truncate.
    width int
    Width to truncate the column value to.
    column String
    Name of the column to truncate.
    width Number
    Width to truncate the column value to.

    IcebergTablePrimaryKeyConstraint, IcebergTablePrimaryKeyConstraintArgs

    Columns List<string>
    The column(s) the constraint applies to.
    Comment string
    Constraint comment.
    Deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    InitiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Name string
    Name of the constraint.
    Rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Columns []string
    The column(s) the constraint applies to.
    Comment string
    Constraint comment.
    Deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    InitiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Name string
    Name of the constraint.
    Rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns list(string)
    The column(s) the constraint applies to.
    comment string
    Constraint comment.
    deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initially_deferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name string
    Name of the constraint.
    rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns List<String>
    The column(s) the constraint applies to.
    comment String
    Constraint comment.
    deferrable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name String
    Name of the constraint.
    rely String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns string[]
    The column(s) the constraint applies to.
    comment string
    Constraint comment.
    deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name string
    Name of the constraint.
    rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns Sequence[str]
    The column(s) the constraint applies to.
    comment str
    Constraint comment.
    deferrable str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initially_deferred str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name str
    Name of the constraint.
    rely str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns List<String>
    The column(s) the constraint applies to.
    comment String
    Constraint comment.
    deferrable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name String
    Name of the constraint.
    rely String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.

    IcebergTableRowAccessPolicy, IcebergTableRowAccessPolicyArgs

    Ons List<string>
    Defines which columns are affected by the policy.
    PolicyName string
    Row access policy name. For more information about this resource, see docs.
    Ons []string
    Defines which columns are affected by the policy.
    PolicyName string
    Row access policy name. For more information about this resource, see docs.
    ons list(string)
    Defines which columns are affected by the policy.
    policy_name string
    Row access policy name. For more information about this resource, see docs.
    ons List<String>
    Defines which columns are affected by the policy.
    policyName String
    Row access policy name. For more information about this resource, see docs.
    ons string[]
    Defines which columns are affected by the policy.
    policyName string
    Row access policy name. For more information about this resource, see docs.
    ons Sequence[str]
    Defines which columns are affected by the policy.
    policy_name str
    Row access policy name. For more information about this resource, see docs.
    ons List<String>
    Defines which columns are affected by the policy.
    policyName String
    Row access policy name. For more information about this resource, see docs.

    IcebergTableShowOutput, IcebergTableShowOutputArgs

    IcebergTableShowOutputAutoRefreshStatus, IcebergTableShowOutputAutoRefreshStatusArgs

    IcebergTableShowOutputPartitionSpec, IcebergTableShowOutputPartitionSpecArgs

    IcebergTableShowOutputPartitionSpecField, IcebergTableShowOutputPartitionSpecFieldArgs

    FieldId int
    Name string
    SourceId int
    Transform string
    FieldId int
    Name string
    SourceId int
    Transform string
    field_id number
    name string
    source_id number
    transform string
    fieldId Integer
    name String
    sourceId Integer
    transform String
    fieldId number
    name string
    sourceId number
    transform string
    fieldId Number
    name String
    sourceId Number
    transform String

    IcebergTableUniqueConstraint, IcebergTableUniqueConstraintArgs

    Columns List<string>
    The column(s) the constraint applies to.
    Comment string
    Constraint comment.
    Deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    InitiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Name string
    Name of the constraint.
    Rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Columns []string
    The column(s) the constraint applies to.
    Comment string
    Constraint comment.
    Deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    InitiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Name string
    Name of the constraint.
    Rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    Validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns list(string)
    The column(s) the constraint applies to.
    comment string
    Constraint comment.
    deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initially_deferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name string
    Name of the constraint.
    rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns List<String>
    The column(s) the constraint applies to.
    comment String
    Constraint comment.
    deferrable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name String
    Name of the constraint.
    rely String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns string[]
    The column(s) the constraint applies to.
    comment string
    Constraint comment.
    deferrable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name string
    Name of the constraint.
    rely string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate string
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns Sequence[str]
    The column(s) the constraint applies to.
    comment str
    Constraint comment.
    deferrable str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initially_deferred str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name str
    Name of the constraint.
    rely str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate str
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    columns List<String>
    The column(s) the constraint applies to.
    comment String
    Constraint comment.
    deferrable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is deferrable (true) or not deferrable (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enable String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enabled (true) or disabled (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    enforced String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is enforced (true) or not enforced (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    initiallyDeferred String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether the constraint is initially deferred (true) or initially immediate (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    name String
    Name of the constraint.
    rely String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether a constraint in NOVALIDATE mode is taken into account (true) or not (false) during query rewrite. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
    validate String
    (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (default)) Whether to validate existing data on the table when the constraint is created (true) or skip validation (false). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.

    Import

    $ pulumi import snowflake:index/icebergTable:IcebergTable example '"<database_name>"."<schema_name>"."<table_name>"'
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Snowflake pulumi/pulumi-snowflake
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the snowflake Terraform Provider.
    snowflake logo
    Viewing docs for Snowflake v2.19.0
    published on Friday, Jul 31, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial