ALTER STAGE¶
既存の名前付きの内部または外部ステージのプロパティを変更します。
- こちらもご参照ください。
構文¶
ALTER STAGE [ IF EXISTS ] <name> RENAME TO <new_name>
ALTER STAGE [ IF EXISTS ] <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]
ALTER STAGE <name> UNSET TAG <tag_name> [ , <tag_name> ... ]
-- Internal stage
ALTER STAGE [ IF EXISTS ] <name> SET
[ FILE_FORMAT = ( { FORMAT_NAME = '<file_format_name>' | TYPE = { CSV | JSON | AVRO | ORC | PARQUET | XML | CUSTOM } [ formatTypeOptions ] } ) ]
{ [ COMMENT = '<string_literal>' ] }
-- External stage
ALTER STAGE [ IF EXISTS ] <name> SET {
[ externalStageParams ]
[ FILE_FORMAT = ( { FORMAT_NAME = '<file_format_name>' | TYPE = { CSV | JSON | AVRO | ORC | PARQUET | XML | CUSTOM } [ formatTypeOptions ] } ) ]
[ COMMENT = '<string_literal>' ]
}
条件:
externalStageParams (for Amazon S3) ::= URL = '<protocol>://<bucket>[/<path>/]' [ AWS_ACCESS_POINT_ARN = '<string>' ] [ { STORAGE_INTEGRATION = <integration_name> } | { CREDENTIALS = ( { { AWS_KEY_ID = '<string>' AWS_SECRET_KEY = '<string>' [ AWS_TOKEN = '<string>' ] } | AWS_ROLE = '<string>' } ) } ] [ ENCRYPTION = ( [ TYPE = 'AWS_CSE' ] MASTER_KEY = '<string>' | TYPE = 'AWS_SSE_S3' | TYPE = 'AWS_SSE_KMS' [ KMS_KEY_ID = '<string>' ] | TYPE = 'NONE' ) ] [ USE_PRIVATELINK_ENDPOINT = { TRUE | FALSE } ]externalStageParams (for Google Cloud Storage) ::= [ URL = 'gcs://<bucket>[/<path>/]' ] [ STORAGE_INTEGRATION = <integration_name> } ] [ ENCRYPTION = ( TYPE = 'GCS_SSE_KMS' [ KMS_KEY_ID = '<string>' ] | TYPE = 'NONE' ) ]externalStageParams (for Microsoft Azure) ::= [ URL = 'azure://<account>.blob.core.windows.net/<container>[/<path>/]' ] [ { STORAGE_INTEGRATION = <integration_name> } | { CREDENTIALS = ( [ AZURE_SAS_TOKEN = '<string>' ] ) } ] [ ENCRYPTION = ( TYPE = 'AZURE_CSE' [ MASTER_KEY = '<string>' ] | TYPE = 'NONE' ) ] [ USE_PRIVATELINK_ENDPOINT = { TRUE | FALSE } ]formatTypeOptions ::= -- If TYPE = CSV COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE RECORD_DELIMITER = '<string>' | NONE FIELD_DELIMITER = '<string>' | NONE MULTI_LINE = TRUE | FALSE FILE_EXTENSION = '<string>' PARSE_HEADER = TRUE | FALSE SKIP_HEADER = <integer> SKIP_BLANK_LINES = TRUE | FALSE DATE_FORMAT = '<string>' | AUTO TIME_FORMAT = '<string>' | AUTO TIMESTAMP_FORMAT = '<string>' | AUTO BINARY_FORMAT = HEX | BASE64 | UTF8 ESCAPE = '<character>' | NONE ESCAPE_UNENCLOSED_FIELD = '<character>' | NONE TRIM_SPACE = TRUE | FALSE FIELD_OPTIONALLY_ENCLOSED_BY = '<character>' | NONE NULL_IF = ( '<string>' [ , '<string>' ... ] ) ERROR_ON_COLUMN_COUNT_MISMATCH = TRUE | FALSE REPLACE_INVALID_CHARACTERS = TRUE | FALSE EMPTY_FIELD_AS_NULL = TRUE | FALSE SKIP_BYTE_ORDER_MARK = TRUE | FALSE ENCODING = '<string>' | UTF8 -- If TYPE = JSON COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE DATE_FORMAT = '<string>' | AUTO TIME_FORMAT = '<string>' | AUTO TIMESTAMP_FORMAT = '<string>' | AUTO BINARY_FORMAT = HEX | BASE64 | UTF8 TRIM_SPACE = TRUE | FALSE MULTI_LINE = TRUE | FALSE NULL_IF = ( '<string>' [ , '<string>' ... ] ) FILE_EXTENSION = '<string>' ENABLE_OCTAL = TRUE | FALSE ALLOW_DUPLICATE = TRUE | FALSE STRIP_OUTER_ARRAY = TRUE | FALSE STRIP_NULL_VALUES = TRUE | FALSE REPLACE_INVALID_CHARACTERS = TRUE | FALSE IGNORE_UTF8_ERRORS = TRUE | FALSE SKIP_BYTE_ORDER_MARK = TRUE | FALSE -- If TYPE = AVRO COMPRESSION = AUTO | GZIP | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE TRIM_SPACE = TRUE | FALSE REPLACE_INVALID_CHARACTERS = TRUE | FALSE NULL_IF = ( '<string>' [ , '<string>' ... ] ) -- If TYPE = ORC TRIM_SPACE = TRUE | FALSE REPLACE_INVALID_CHARACTERS = TRUE | FALSE NULL_IF = ( '<string>' [ , '<string>' ... ] ) -- If TYPE = PARQUET COMPRESSION = AUTO | LZO | SNAPPY | NONE SNAPPY_COMPRESSION = TRUE | FALSE BINARY_AS_TEXT = TRUE | FALSE USE_LOGICAL_TYPE = TRUE | FALSE TRIM_SPACE = TRUE | FALSE USE_VECTORIZED_SCANNER = TRUE | FALSE REPLACE_INVALID_CHARACTERS = TRUE | FALSE NULL_IF = ( '<string>' [ , '<string>' ... ] ) -- If TYPE = XML COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE IGNORE_UTF8_ERRORS = TRUE | FALSE PRESERVE_SPACE = TRUE | FALSE STRIP_OUTER_ELEMENT = TRUE | FALSE DISABLE_AUTO_CONVERT = TRUE | FALSE REPLACE_INVALID_CHARACTERS = TRUE | FALSE SKIP_BYTE_ORDER_MARK = TRUE | FALSE
ディレクトリテーブルの構文¶
ALTER STAGE [ IF EXISTS ] <name> SET DIRECTORY = ( { ENABLE = TRUE | FALSE } )
ALTER STAGE [ IF EXISTS ] <name> REFRESH [ SUBPATH = '<relative-path>' ]
パラメーター¶
name変更するステージの識別子を指定します。識別子にスペースまたは特殊文字が含まれる場合は、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。
RENAME TO new_nameステージの新しい識別子を指定します。スキーマに対して一意である必要があります。
詳細については、 識別子の要件 をご参照ください。
オプションでオブジェクトの名前を変更して、オブジェクトを別のデータベースやスキーマに移動できます。これを実行するには、新しいデータベース名やスキーマ名をそれぞれ
db_name.schema_name.object_nameまたはschema_name.object_nameの形式で含む、修飾されたnew_name値を指定します。注釈
宛先データベースやスキーマはすでに存在している必要があります。また、同じ名前のオブジェクトが宛先データベースにすでに存在することはできません。存在する場合、ステートメントはエラーを返します。
オブジェクトを管理アクセススキーマに移動することは、オブジェクトの所有者(つまり、オブジェクトに対して OWNERSHIP 権限を持つロール)がターゲットスキーマも所有している場合を 除き 禁止されています。
SET ...ステージに設定するオプション/プロパティを指定します。
URL = ' ... '、 .STORAGE_INTEGRATION = ...、 .CREDENTIALS = ( ... )、 .ENCRYPTION = ( ... )クラウド固有の URL、ストレージ統合または認証情報、および/または外部ステージの暗号化を変更します。詳細については、 外部ステージパラメーター (このトピック)をご参照ください。
TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]タグ の名前とタグ文字列の値を指定します。
タグ値は常に文字列であり、タグ値の最大文字数は256です。
ステートメントでのタグの指定に関する情報については、 Tag quotas をご参照ください。
COMMENT = 'string_literal'ステージのコメントを追加するか、既存のコメントを上書きします。
FILE_FORMAT = ( FORMAT_NAME = 'file_format_name' )または .FILE_FORMAT = ( TYPE = CSV | JSON | AVRO | ORC | PARQUET | XML | CUSTOM [ ... ] )次のいずれかのステージのファイル形式を変更します。
FORMAT_NAME = file_format_nameステージに使用する既存のファイル形式オブジェクトを指定します。指定されたファイル形式オブジェクトは、データファイルの形式タイプ(CSV、 JSONなど)およびその他の形式オプションを決定します。
文字列には追加の形式オプションが指定されていないことに注意してください。代わりに、名前付きファイル形式オブジェクトは、データのロード/アンロードに使用される他のファイル形式オプションを定義します。詳細については、 CREATE FILE FORMAT をご参照ください。
TYPE = CSV | JSON | AVRO | ORC | PARQUET | XML | CUSTOM [ ... ]ステージのファイル形式の型を指定します。
ステージからのデータのロード( COPY INTO <テーブル> を使用)は、サポートされているすべてのファイル形式タイプに対応しています。
( COPY INTO <場所> を使用して)ステージにデータをアンロードすることは、 CSV、 JSON、または PARQUETに対応します。
ファイル形式タイプが指定されている場合、追加の形式固有のオプションを変更できます。詳細については、 形式タイプオプション (このトピック)をご参照ください。
CUSTOMフォーマット・タイプは、基礎となるステージが非構造化データを保持することを指定し、FILE_PROCESSORコピー・オプションとともにのみ使用できます。注釈
FORMAT_NAMEとTYPEは相互に排他的です。ステージに指定できるのはどちらか一方のみです。
注釈
CREATE STAGE、 ALTER STAGE、 CREATE TABLE、または ALTER TABLE コマンドを使用して、ファイルフォーマットオプションやコピーオプションを指定しないでください。コピーオプションの指定には、 COPY INTO <テーブル> コマンドを使用することをお勧めします。
外部ステージパラメーター(externalStageParams)¶
URL = 'cloud_specific_url'ステージに URL がない場合、それは内部ステージです
警告
ステージの
URLパラメーターを変更すると、ステージに依存するオブジェクトの次の機能が破損する可能性があります。クラウドメッセージングを利用してデータロードをトリガーするパイプオブジェクト(つまり、
AUTO_INGEST = TRUE)。クラウドメッセージングを利用してメタデータの更新をトリガーする外部テーブル(つまり、
AUTO_REFRESH = TRUE)。
Amazon S3
URL = 'protocol://bucket[/path/]'ロード/アンロード用のデータファイルの保存に使用される外部ロケーション(既存のS3バケット)の URL を変更します。この場合:
protocolは以下のいずれかです。s3プレフィックスは、中国以外のパブリック AWS リージョンのS3ストレージを参照します。s3chinaプレフィックスは、中国のパブリック AWS リージョンのS3ストレージを参照します。s3govプレフィックスは、 政府リージョン のS3ストレージを参照します。
ストレージ統合を使用した 政府リージョン のクラウドストレージへのアクセスは、同じ政府リージョンでホストされているSnowflakeアカウントに限定されています。
同様に、中国の地域のクラウドストレージにアクセスする必要がある場合は、中国の同じ地域でホストされているSnowflakeアカウントからのみストレージ統合を使用できます。
このような場合、 CREDENTIALS パラメーター( CREATE STAGE コマンド内の)を使用して(ストレージ統合を使用するのではなく)、認証用の認証情報を提供します。
bucketはS3バケットの名前、またはS3バケットアクセスポイントの バケットスタイルのエイリアス。S3アクセスポイントの場合は、AWS_ACCESS_POINT_ARNパラメーターの値も指定する必要があります。pathは、クラウドストレージの場所(ファイルは共通の文字列で始まる名前を持つ)にあるファイルの大文字と小文字を区別するオプションのパスで、ファイルのセットを制限します。パスは、クラウドストレージサービスによって、 プレフィックス または フォルダー と呼ばれることもあります。
AWS_ACCESS_POINT_ARN = 'string'S3アクセスポイントのAmazonリソース名(ARN)を指定します。ストレージ
URLにS3アクセスポイントエイリアスを指定する場合にのみ必要です。
Google Cloud Storage
URL = 'gcs://bucket[/path/]'ロード/アンロード用のデータファイルの保存に使用される外部ロケーション(既存の GCS バケット)の URL を変更します。この場合:
bucketは GCS バケットの名前です。pathは、ロードするファイルのセットを制限するクラウドストレージの場所にある、ファイルの大文字と小文字を区別するオプションのパスです(つまり、ファイルの名前は一般的な文字列で開始)。パスは、別のクラウドストレージサービスによって プレフィックス または フォルダー と呼ばれることもあります。
Microsoft Azure
URL = 'azure://account.blob.core.windows.net/container[/path/]'ロード用データファイルの保存に使用する外部ロケーション(既存のAzureコンテナー)の URL を変更します。この場合、
accountは、Azureアカウントの名前です(例:myaccount)。Data Lake Storage Gen2を含む、サポートされているすべてのタイプのAzure BLOBストレージアカウントに、blob.core.windows.netエンドポイントを使用します。containerは、Azureコンテナーの名前です(例:mycontainer)。pathは、ロードするファイルのセットを制限するクラウドストレージの場所にある、ファイルの大文字と小文字を区別するオプションのパスです(つまり、ファイルの名前は一般的な文字列で開始)。パスは、別のクラウドストレージサービスによって プレフィックス または フォルダー と呼ばれることもあります。
STORAGE_INTEGRATION = integration_nameまたは .CREDENTIALS = ( cloud_specific_credentials )Amazon S3、Google Cloud Storage、またはMicrosoft Azureがプライベートの場合のみに必要です。公共のバケット/コンテナーには必要ありません
Amazon S3
STORAGE_INTEGRATION = integration_name外部クラウドストレージの認証責任をSnowflake IDおよびアクセス管理(IAM)エンティティに委任するために使用されるストレージ統合の名前を指定します。詳細については、 CREATE STORAGE INTEGRATION をご参照ください。
注釈
ストレージ統合の使用を強くお勧めします。このオプションにより、ステージの作成時またはデータのロード時に CREDENTIALS パラメーターを使用してクラウドストレージの認証情報を提供する必要がなくなります。
CREDENTIALS = ( AWS_KEY_ID = 'string' AWS_SECRET_KEY = 'string' [ AWS_TOKEN = 'string' ] )または .CREDENTIALS = ( AWS_ROLE = 'string' )AWS に接続し、ロード/アンロードするファイルがステージングされるプライベートS3バケットにアクセスするためのセキュリティ認証情報を変更します。詳細については、 Amazon S3へのセキュアアクセスの構成 をご参照ください。
指定する認証情報は、バケットのSnowflakeアクセス許可を AWS IAM (識別およびアクセス管理)ユーザーまたはロールに関連付けたかどうかによって異なります。
IAM ユーザー: IAM 認証情報が必要です。仮の(別名「スコープ」)認証情報は AWS セキュリティトークンサービス(STS)によって生成され、次の3つのコンポーネントで構成されます。
AWS_KEY_IDAWS_SECRET_KEYAWS_TOKEN
プライベートバケットにアクセスするには、3つすべてが 必要 です。指定された期間が経過すると、仮認証情報は期限切れになり、使用できなくなります。そうすると、有効な仮の認証情報の新しいセットを生成する必要があります。
重要
COPY コマンドは、永続的な(別名「長期」)認証情報の使用も許可します。ただし、セキュリティ上の理由から、Snowflakeはこれらの使用を推奨 しません 。永続的な認証情報を使用する必要がある場合、Snowflakeは外部ステージ用に新しい永続的な認証情報を定期的に生成することをお勧めします。
IAM ロール: セキュリティ認証情報とアクセスキーを省略し、代わりに
AWS_ROLEを使用してロールを識別し、 AWS ロール ARN (Amazonリソース名)を指定します。重要
AWS IAM ロールを使用してプライベートS3バケットにアクセスし、データをロードまたはアンロードする機能は廃止されました(つまり、サポートは将来のリリースで削除される予定)。この機能を使用する既存のS3ステージを変更して、代わりにストレージ統合オブジェクトを参照することを強くお勧めします。手順については、 オプション1: Amazon S3にアクセスするためのSnowflakeストレージ統合の構成 をご参照ください。
Google Cloud Storage
STORAGE_INTEGRATION = integration_name外部クラウドストレージの認証責任をSnowflake IDおよびアクセス管理(IAM)エンティティに委任するために使用されるストレージ統合の名前を指定します。詳細については、 CREATE STORAGE INTEGRATION をご参照ください。
Microsoft Azure
STORAGE_INTEGRATION = integration_name外部クラウドストレージの認証責任をSnowflake IDおよびアクセス管理(IAM)エンティティに委任するために使用されるストレージ統合の名前を指定します。詳細については、 CREATE STORAGE INTEGRATION をご参照ください。
注釈
ストレージ統合の使用を強くお勧めします。このオプションにより、ステージの作成時またはデータのロード時に CREDENTIALS パラメーターを使用してクラウドストレージの認証情報を提供する必要がなくなります。
CREDENTIALS = ( AZURE_SAS_TOKEN = 'string' )Azureに接続し、ロードされたデータを含むファイルがステージングされるプライベートコンテナーにアクセスするための SAS (共有アクセス署名)トークンを変更します。認証情報はAzureによって生成されます。
ENCRYPTION = ( cloud_specific_encryption )暗号化されたファイルからのロード/アンロードにのみ必要です。保存場所とファイルが暗号化されていない場合は不要
- データのロード:
ストレージの場所内の暗号化されたファイルを復号化し、データを抽出するために使用する暗号化設定を変更します。
- データのアンロード:
ストレージの場所にアンロードされたファイルの暗号化に使用する暗号化設定を変更します。
Amazon S3
ENCRYPTION = ( [ TYPE = 'AWS_CSE' ] MASTER_KEY = 'string' | TYPE = 'AWS_SSE_S3' | TYPE = 'AWS_SSE_KMS' [ KMS_KEY_ID = 'string' ] | TYPE = 'NONE' )TYPE = ...使用される暗号化タイプを指定します。可能な値は次のとおりです。
AWS_CSE: クライアント側の暗号化(MASTER_KEY値が必要)。現在、提供できるクライアント側の マスターキー は対称キーのみです。MASTER_KEY値が指定されている場合、SnowflakeはTYPE = AWS_CSEと見なします(つまり、MASTER_KEY値が指定されている場合、TYPEは不要です)。AWS_SSE_S3:追加の暗号化設定を必要としないサーバー側の暗号化。AWS_SSE_KMS:オプションのKMS_KEY_ID値を受け入れるサーバー側の暗号化。
暗号化タイプの詳細については、 クライアント側の暗号化 または サーバー側の暗号化 の AWS ドキュメントをご参照ください。
NONE:暗号化なし。
MASTER_KEY = 'string'(AWS_CSE暗号化のみに適用)バケット内のファイルの暗号化に使用されたクライアント側マスターキーを指定します。マスターキーは、Base64エンコード形式の128ビットまたは256ビットキーである必要があります。
KMS_KEY_ID = 'string'(AWS_SSE_KMS暗号化のみに適用)オプションで、バケットに アンロードされた ファイルの暗号化に使用する AWS KMS 管理キーの ID を指定します。値が指定されていない場合、デフォルトの KMS キー ID を使用して、アンロード時にファイルが暗号化されます。
この値はデータのロードでは無視されることに注意してください。
デフォルト:
NONEGoogle Cloud Storage
ENCRYPTION = ( TYPE = 'GCS_SSE_KMS' [ KMS_KEY_ID = 'string' ] | TYPE = 'NONE' )TYPE = ...使用される暗号化タイプを指定します。可能な値は次のとおりです。
GCS_SSE_KMS:オプションのKMS_KEY_ID値を受け入れるサーバー側の暗号化。詳細については、 Google Cloud のドキュメントをご参照ください。
NONE:暗号化なし。
KMS_KEY_ID = 'string'(GCS_SSE_KMS暗号化のみに適用)オプションで、バケットに アンロード されるファイルの暗号化に使用する KMS 管理キーの ID を指定します。値が指定されていない場合、バケットに対して設定されているデフォルトの KMS キー ID を使用して、アンロード時にファイルが暗号化されます。
この値はデータのロードでは無視されることに注意してください。サービスアカウントにバケット内のデータを復号化するための十分な権限がある場合、ロード操作は成功するはずです。
デフォルト:
NONEMicrosoft Azure
ENCRYPTION = ( TYPE = 'AZURE_CSE' MASTER_KEY = 'string' | TYPE = 'NONE' )TYPE = ...使用される暗号化タイプを指定します。可能な値は次のとおりです。
AZURE_CSE: クライアント側の暗号化(MASTER_KEY 値が必要)。詳細については、Microsoft Azureのドキュメントの クライアント側の暗号化情報 をご参照ください。NONE:暗号化なし。
MASTER_KEY = 'string'(AZURE_CSE 暗号化のみに適用)ファイルの暗号化または復号化に使用されるクライアント側マスターキーを指定します。マスターキーは、Base64エンコード形式の128ビットまたは256ビットキーである必要があります。
デフォルト:
NONEUSE_PRIVATELINK_ENDPOINT = { TRUE | FALSE }プライベート接続 を外部ステージに使用し、セキュリティ体制を強化するかどうかを指定します。
外部ステージがストレージ統合を使用し、その統合がプライベート接続用に構成されている場合は、このパラメーターを FALSE に設定します。
このパラメーターの使用に関する情報については、次のいずれかをご参照ください。
ディレクトリテーブルのパラメーター¶
ENABLE = TRUE | FALSEディレクトリテーブルをステージに追加するかどうかを指定します。値が TRUE の場合は、ステージにディレクトリテーブルが作成されます。
注釈
このパラメーターを TRUE に設定することは、 S3互換の外部ステージ ではサポート されません。S3互換の外部ステージのメタデータを自動的にリフレッシュすることはできません。
デフォルト:
FALSEREFRESHディレクトリテーブル定義で参照されるステージングされたデータファイルにアクセスし、テーブルメタデータを更新します。
パス内の新しいファイルがテーブルメタデータに追加されます。
パス内のファイルへの変更は、テーブルメタデータで更新されます。
パス内になくなったファイルは、テーブルのメタデータから削除されます。
ファイルがステージに追加、更新、またはドロップされるたびに、このコマンドを実行できます。このステップでは、ディレクトリテーブルのステージ定義にある関連ファイルの最新セットとメタデータが同期されます。
SUBPATH = 'relative-path'任意で、相対パスを指定して、データファイルの特定のサブセットに対するメタデータを更新します。
形式タイプオプション(formatTypeOptions)¶
指定したファイル形式タイプ(FILE_FORMAT = ( TYPE = ... ))に応じて、次の形式固有のオプションを1つ以上含めることができます(空白、コンマ、または改行で区切る)。
TYPE = CSV¶
COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE- 使用:
データのロード、データのアンロード、および外部テーブル
- 定義:
データをロードするときに、データファイルの現在の圧縮アルゴリズムを指定します。Snowflakeはこのオプションを使用して、ファイル内の圧縮データをロード用に抽出できるように、 圧縮済み データファイルの圧縮方法を検出します。
データをアンロードする際、指定された圧縮アルゴリズムを使用してデータファイルを圧縮します。
- 値:
サポートされる値
注意
AUTOデータをロードすると、圧縮アルゴリズムは自動的に検出されますが、Brotliで圧縮されたファイルは例外で、現在は自動検出できません。データをアンロードするとき、ファイルはデフォルトのgzipを使用して自動的に圧縮されます。
GZIPBZ2BROTLIBrotliで圧縮されたファイルをロード/アンロードするときは、指定する必要があります。
ZSTDZstandard v0.8(およびそれ以上)がサポートされています。
DEFLATEDeflate圧縮されたファイル(zlibヘッダー、 RFC1950を使用)。
RAW_DEFLATE生Deflate圧縮ファイル(ヘッダーなし、 RFC1951)。
NONEデータをロードするとき、ファイルが圧縮されていないことを示します。データをアンロードするとき、アンロードされたファイルが圧縮されないことを指定します。
- デフォルト:
AUTO
RECORD_DELIMITER = 'string' | NONE- 使用:
データのロード、データのアンロード、および外部テーブル
- 定義:
入力ファイル(データのロード)またはアンロードされたファイル(データのアンロード)の記録を分離する、1つ以上のシングルバイトまたはマルチバイト文字。一般的なエスケープシーケンス、または次のシングルバイトまたはマルチバイト文字を受け入れます。
- シングルバイト文字:
8進値(
\\でプレフィックス)、または16進値(0xまたは\xでプレフィックス)を受け入れます。たとえば、アクサンシルコンフレックス(^)文字で区切られた記録の場合は、8進数(\\136)または16進数(0x5e)の値を指定します。- マルチバイト文字:
16進値(
\xでプレフィックス)。たとえば、セント(¢)文字で区切られた記録の場合は、16進数(\xC2\xA2)の値を指定します。RECORD_DELIMITER または FIELD_DELIMITER の区切り文字は、他のファイル形式オプションの区切り文字の部分文字列にはできません(例えば、
FIELD_DELIMITER = 'aa' RECORD_DELIMITER = 'aabb')。
指定された区切り文字は、ランダムなバイトのシーケンスではなく、有効な UTF-8文字でなければなりません。区切り文字は最大20文字に制限されていることにも注意してください。
NONEの値も受け入れます。- デフォルト:
- データのロード:
改行文字。「改行」は論理的であるため、
\r\nがWindowsプラットフォーム上のファイルの改行として理解されることに注意してください。- データのアンロード:
改行文字(
\n)。
FIELD_DELIMITER = 'string' | NONE- 使用:
データのロード、データのアンロード、および外部テーブル
- 定義:
入力ファイル(データのロード)またはアンロードされたファイル(データのアンロード)のフィールドを区切る1つ以上のシングルバイトまたはマルチバイト文字。一般的なエスケープシーケンス、または次のシングルバイトまたはマルチバイト文字を受け入れます。
- シングルバイト文字:
8進値(
\\でプレフィックス)、または16進値(0xまたは\xでプレフィックス)を受け入れます。たとえば、アクサンシルコンフレックス(^)文字で区切られた記録の場合は、8進数(\\136)または16進数(0x5e)の値を指定します。- マルチバイト文字:
16進値(
\xでプレフィックス)。たとえば、セント(¢)文字で区切られた記録の場合は、16進数(\xC2\xA2)の値を指定します。RECORD_DELIMITER または FIELD_DELIMITER の区切り文字は、他のファイル形式オプションの区切り文字の部分文字列にはできません(例えば、
FIELD_DELIMITER = 'aa' RECORD_DELIMITER = 'aabb')。注釈
ASCII 以外の文字の場合は、16進数のバイトシーケンス値を使用して決定論的動作を得る必要があります。
指定された区切り文字は、ランダムなバイトのシーケンスではなく、有効な UTF-8文字でなければなりません。区切り文字は最大20文字に制限されていることにも注意してください。
NONEの値も受け入れます。- デフォルト:
コンマ(
,)
MULTI_LINE = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
複数行を許すかどうかを指定するブール。MULTI_LINE が
FALSEに設定され、指定されたレコード区切り文字が CSV フィールド内に存在する場合、そのフィールドを含むレコードはエラーとして解釈されます。- デフォルト:
TRUE
注釈
RFC4180 仕様に従った大きな非圧縮 CSV ファイル(128MB より大きい)をロードする場合、MULTI_LINE が
FALSEに、COMPRESSION がNONEに、ON_ERROR がABORT_STATEMENTまたはCONTINUEに設定されているときは、Snowflakeはこれら CSV ファイルの平行スキャンをサポートします。FILE_EXTENSION = 'string' | NONE- 使用:
データのアンロードのみ
- 定義:
ステージにアンロードされるファイルの拡張子を指定します。拡張子を受け入れます。目的のソフトウェアまたはサービスが読み取れるファイル拡張子を指定することは、ユーザーの責任です。
- デフォルト:
null、つまり、ファイル拡張子は形式タイプ
.csv[compression]によって決定されます。ここで、compressionは、COMPRESSIONが設定されている場合、圧縮方法によって追加された拡張子です。
注釈
SINGLEコピーオプションがTRUEの場合、 COPY コマンドはデフォルトでファイル拡張子のないファイルをアンロードします。ファイル拡張子を指定するには、internal_locationまたはexternal_locationのパスにファイル名と拡張子を提供します(例:copy into @stage/data.csv)。PARSE_HEADER = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
データファイルにある最初の行のヘッダーを使用して列名を決定するかどうかを指定するブール値。
このファイル形式オプションは、次のアクションにのみ適用されます。
INFER_SCHEMA 関数を使用した、列定義の自動検出。
INFER_SCHEMA 関数と MATCH_BY_COLUMN_NAME コピーオプションを使用した、個別の列への CSV データロード。
オプションが TRUE に設定されている場合は、最初の行のヘッダーが列名を決定するために使われます。デフォルト値 FALSE は、列名をc として返します。 は列の位置です。
注釈
このオプションは外部テーブルではサポートされていません。
PARSE_HEADER = TRUEを設定した場合、 SKIP_HEADER オプションはサポートされません。
- デフォルト:
FALSE
SKIP_HEADER = integer- 使用:
データのロードおよび外部テーブル
- 定義:
スキップするファイルの先頭の行数。
SKIP_HEADER は RECORD_DELIMITER または FIELD_DELIMITER の値を使用してヘッダー行を決定しないことに注意してください。むしろ、指定された数の CRLF (キャリッジリターン、ラインフィード)で区切られたファイル内の行を単にスキップします。ロードするデータの行を決定するのには、RECORD_DELIMITER および FIELD_DELIMITER が使用されます。
- デフォルト:
0
SKIP_BLANK_LINES = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
データファイルで検出された空白行のスキップを指定するブール値。それ以外の場合、空白行は記録終了エラーを生成します(デフォルトの動作)。
- デフォルト:
FALSE
DATE_FORMAT = 'string' | AUTO- 使用:
データのロードとアンロード
- 定義:
データファイル(データのロード)またはテーブル(データのアンロード)の日付値の形式を定義します。値が指定されていない、または
AUTOの場合、 DATE_INPUT_FORMAT (データのロード)または DATE_OUTPUT_FORMAT (データのアンロード)パラメーターの値が使用されます。- デフォルト:
AUTO
TIME_FORMAT = 'string' | AUTO- 使用:
データのロードとアンロード
- 定義:
データファイル(データのロード)またはテーブル(データのアンロード)の時間値の形式を定義します。値が指定されていない、または
AUTOの場合、 TIME_INPUT_FORMAT (データのロード)または TIME_OUTPUT_FORMAT (データのアンロード)パラメーターの値が使用されます。- デフォルト:
AUTO
TIMESTAMP_FORMAT = string' | AUTO- 使用:
データのロードとアンロード
- 定義:
データファイル(データのロード)またはテーブル(データのアンロード)のタイムスタンプ値の形式を定義します。値が指定されていない、または
AUTOの場合、 TIMESTAMP_INPUT_FORMAT (データのロード)または TIMESTAMP_OUTPUT_FORMAT (データのアンロード)パラメーターの値が使用されます。- デフォルト:
AUTO
BINARY_FORMAT = HEX | BASE64 | UTF8- 使用:
データのロードとアンロード
- 定義:
バイナリ入力または出力のエンコード形式を定義します。このオプションは、テーブルのバイナリ列にデータをロードまたはアンロードするときに使用できます。
- デフォルト:
HEX
ESCAPE = 'character' | NONE- 使用:
データのロードとアンロード
- 定義:
囲まれているフィールド値、または囲まれていないフィールド値のエスケープ文字として使用されるシングルバイト文字の文字列。エスケープ文字は、文字シーケンス内の後続の文字に対して代替解釈を呼び出します。ESCAPE 文字を使用して、データ内の
FIELD_OPTIONALLY_ENCLOSED_BY文字のインスタンスをリテラルとして解釈できます。一般的なエスケープシーケンス、8進数値、または16進数値を受け入れます。
- データのロード:
囲まれたフィールド専用のエスケープ文字を指定します。
FIELD_OPTIONALLY_ENCLOSED_BYを設定して、フィールドを囲むのに使用する文字を指定します。注釈
このファイル形式オプションは、シングルバイト文字のみをサポートします。UTF-8文字エンコードは、上位の ASCII 文字をマルチバイト文字として表すことに注意してください。データファイルが UTF-8文字セットでエンコードされている場合は、オプション値として上位の ASCII 文字を指定することはできません。
さらに、上位の ASCII 文字を指定する場合は、データファイルの文字エンコードとして
ENCODING = 'string'ファイル形式オプションを設定して、文字が正しく解釈されるようにすることをお勧めします。- データのアンロード:
このオプションが設定されている場合は、
ESCAPE_UNENCLOSED_FIELDのエスケープ文字セットが上書きされます。- デフォルト:
NONE
ESCAPE_UNENCLOSED_FIELD = 'character' | NONE- 使用:
データのロード、データのアンロード、および外部テーブル
- 定義:
囲まれていないフィールド値専用のエスケープ文字として使用されるシングルバイト文字の文字列。エスケープ文字は、文字シーケンス内の後続の文字に対して代替解釈を呼び出します。ESCAPE 文字を使用して、データ内の
FIELD_DELIMITERまたはRECORD_DELIMITER文字のインスタンスをリテラルとして解釈できます。エスケープ文字は、データ内のそれ自体のインスタンスをエスケープするためにも使用できます。一般的なエスケープシーケンス、8進数値、または16進数値を受け入れます。
- データのロード:
囲まれていないフィールド専用のエスケープ文字を指定します。
注釈
デフォルト値は
\\です。データファイルの行がバックスラッシュ(\)文字で終わる場合、この文字はRECORD_DELIMITERファイル形式オプションに指定された改行文字または復帰文字をエスケープします。その結果、ロード操作はこの行と次の行を単一のデータ行として扱います。この問題を回避するには、この値をNONEに設定します。このファイル形式オプションは、シングルバイト文字のみをサポートします。UTF-8文字エンコードは、上位の ASCII 文字をマルチバイト文字として表すことに注意してください。データファイルが UTF-8文字セットでエンコードされている場合は、オプション値として上位の ASCII 文字を指定することはできません。
さらに、上位の ASCII 文字を指定する場合は、データファイルの文字エンコードとして
ENCODING = 'string'ファイル形式オプションを設定して、文字が正しく解釈されるようにすることをお勧めします。
- データのアンロード:
ESCAPEが設定されている場合は、そのファイルオプションのエスケープ文字セットがこのオプションを上書きします。- デフォルト:
バックスラッシュ(
\\)
TRIM_SPACE = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
フィールドから空白を削除するかどうかを指定するブール値。
たとえば、外部データベースソフトウェアがフィールドを引用符で囲み、先頭にスペースを挿入する場合、Snowflakeはフィールドの先頭として開始引用文字ではなく先頭スペースを読み取ります(つまり、引用符はフィールドデータの文字列の一部として解釈されます)。このオプションを
TRUEに設定すると、データのロード中に不要なスペースが削除されます。別の例として、先頭または後続のスペースが文字列を囲む引用符の前後にある場合、このオプションを使用して周囲のスペースを削除し、
FIELD_OPTIONALLY_ENCLOSED_BYオプションを使用して引用文字を削除できます。引用符 内 のスペースは保持されることに注意してください。たとえば、FIELD_DELIMITER = '|'とFIELD_OPTIONALLY_ENCLOSED_BY = '"'を想定した場合、|"Hello world"| /* loads as */ >Hello world< |" Hello world "| /* loads as */ > Hello world < | "Hello world" | /* loads as */ >Hello world<
(この例のブラケットはロードされておらず、ロードされた文字列の開始と終了を区別するために使用されます)
- デフォルト:
FALSE
FIELD_OPTIONALLY_ENCLOSED_BY = 'character' | NONE- 使用:
データのロード、データのアンロード、および外部テーブル
- 定義:
文字列を囲むのに使用される文字。値は、
NONE、一重引用符(')、または二重引用符(")のいずれかです。一重引用符を使用するには、8進数または16進数表現(0x27)または二重引用符で囲まれたエスケープ('')を使用します。- データのアンロードのみ:
ソーステーブルのフィールドにこの文字が含まれている場合、Snowflakeはアンロード時に同じ文字を使用してエスケープします。たとえば、値が二重引用符であり、フィールドに文字列
A "B" Cが含まれる場合、Snowflakeは二重引用符を次のようにエスケープします。A ""B"" C
- デフォルト:
NONE
NULL_IF = ( 'string1' [ , 'string2' , ... ] )- 使用:
データのロード、データのアンロード、および外部テーブル
- 定義:
SQL NULL との間の変換に使用される文字列。
データをロードする際、Snowflakeは、データロードソースのこれらの値を SQL NULL に置き換えます。複数の文字列を指定するには、文字列のリストを括弧で囲み、各値をコンマで区切ります。
Snowflakeは、データ型に関係なく、値のすべてのインスタンスを NULL に変換することに注意してください。たとえば、
2が値として指定されている場合は、文字列または数値としての2のインスタンスすべてが変換されます。例:
NULL_IF = ('\N', 'NULL', 'NUL', '')このオプションには空の文字列を含めることができます。
データをアンロードする際、Snowflakeは SQL NULL 値をリストの最初の値に変換します。
- デフォルト:
\N(つまり NULL 。これはESCAPE_UNENCLOSED_FIELDの値を\と仮定した場合)
ERROR_ON_COLUMN_COUNT_MISMATCH = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
入力ファイルの区切り列(フィールド)の数が対応するテーブルの列の数と一致しない場合に、解析エラーを生成するかどうかを指定するブール値。
FALSEに設定すると、エラーは生成されず、ロードが続行されます。ファイルが正常にロードされた場合:入力ファイルに、テーブル内の列よりもフィールド数が多いレコードが含まれている場合、一致するフィールドはファイル内の出現順にロードされ、残りのフィールドはロードされません。
入力ファイルにテーブル内の列よりもフィールド数が少ない記録が含まれている場合、テーブル内の一致しない列は NULL 値でロードされます。
このオプションは、入力ファイル内のすべてのレコードが同じ長さであることを前提としています(つまり、可変長のレコードを含むファイルは、このパラメーターに指定された値に関係なくエラーを返します)。
- デフォルト:
TRUE
注釈
ロード中にデータを変換する (つまり、 COPY コマンドのソースとしてクエリを使用する)場合、このオプションは無視されます。データファイルは、ターゲットテーブルと同数および同順序の列である必要はありません。
REPLACE_INVALID_CHARACTERS = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
無効な UTF -8文字をUnicode置換文字(
�)で置き換えるかどうかを指定するブール値。
TRUEに設定すると、Snowflakeは無効な UTF -8文字をUnicode置換文字に置き換えます。FALSEに設定すると、無効な UTF-8文字エンコードが検出されたときにロード操作でエラーが生成されます。- デフォルト:
FALSE
EMPTY_FIELD_AS_NULL = TRUE | FALSE- 使用:
データのロード、データのアンロード、および外部テーブル
- 定義:
データの読み込み中、入力ファイルの空フィールドに SQL NULL を挿入するかどうかを指定します。空フィールドは2つの連続した区切り文字で表されます(例:
,,)。FALSEに設定すると、Snowflakeは空のフィールドを対応する列タイプにキャストしようとします。タイプ STRINGの列に空の文字列が挿入されます。他の列タイプの場合、 COPY コマンドはエラーを生成します。データをアンロードするとき、このオプションは
FIELD_OPTIONALLY_ENCLOSED_BYと組み合わせて使用されます。FIELD_OPTIONALLY_ENCLOSED_BY = NONEの場合、EMPTY_FIELD_AS_NULL = FALSEを設定すると、テーブル内の空の文字列を、フィールド値を囲む引用符なしで空の文字列値にアンロードするように指定されます。TRUEに設定した場合、FIELD_OPTIONALLY_ENCLOSED_BYは文字列を囲む文字を指定する必要があります。
- デフォルト:
TRUE
SKIP_BYTE_ORDER_MARK = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
データファイルに存在する場合、 BOM (バイト順マーク)をスキップするかどうかを指定するブール値。BOM は、データファイルの先頭にある文字コードで、バイト順とエンコード形式を定義します。
FALSEに設定されている場合、Snowflakeはデータファイル内の BOM を認識し、 BOM がエラーの原因になるか、テーブルの最初の列にマージされる可能性があります。- デフォルト:
TRUE
ENCODING = 'string'- 使用:
データのロードおよび外部テーブル
- 定義:
データをテーブルにロードする際にソースデータの文字セットを指定する文字列(定数)。
文字 セット
ENCODING値サポートされている言語
注意
Big5
BIG5中国語(繁体字)
EUC-JP
EUCJP日本語
EUC-KR
EUCKR韓国語
GB18030
GB18030中国語
IBM420
IBM420アラビア語
IBM424
IBM424ヘブライ語
IBM949
IBM949韓国語
ISO-2022-CN
ISO2022CN中国語(簡体字)
ISO-2022-JP
ISO2022JP日本語
ISO-2022-KR
ISO2022KR韓国語
ISO-8859-1
ISO88591デンマーク語、オランダ語、英語、フランス語、ドイツ語、イタリア語、ノルウェー語、ポルトガル語、スウェーデン語
ISO-8859-2
ISO88592チェコ語、ハンガリー語、ポーランド語、ルーマニア語
ISO-8859-5
ISO88595ロシア語
ISO-8859-6
ISO88596アラビア語
ISO-8859-7
ISO88597ギリシャ語
ISO-8859-8
ISO88598ヘブライ語
ISO-8859-9
ISO88599トルコ語
ISO-8859-15
ISO885915デンマーク語、オランダ語、英語、フランス語、ドイツ語、イタリア語、ノルウェー語、ポルトガル語、スウェーデン語
ユーロ通貨記号を含む8文字を除いて、 ISO-8859-1と同じです。
KOI8-R
KOI8Rロシア語
Shift_JIS
SHIFTJIS日本語
UTF-8
UTF8すべての言語
区切りファイル(CSV、 TSVなど)からデータをロードする場合、 UTF-8がデフォルトです。. . サポートされている他のすべてのファイル形式(JSON、Avroなど)からデータをロードおよびアンロードする場合、サポートされる文字セットは UTF-8のみです。
UTF-16
UTF16すべての言語
UTF-16BE
UTF16BEすべての言語
UTF-16LE
UTF16LEすべての言語
UTF-32
UTF32すべての言語
UTF-32BE
UTF32BEすべての言語
UTF-32LE
UTF32LEすべての言語
windows-874
WINDOWS874タイ
windows-949
WINDOWS949韓国語
windows-1250
WINDOWS1250チェコ語、ハンガリー語、ポーランド語、ルーマニア語
windows-1251
WINDOWS1251ロシア語
windows-1252
WINDOWS1252デンマーク語、オランダ語、英語、フランス語、ドイツ語、イタリア語、ノルウェー語、ポルトガル語、スウェーデン語
windows-1253
WINDOWS1253ギリシャ語
windows-1254
WINDOWS1254トルコ語
windows-1255
WINDOWS1255ヘブライ語
windows-1256
WINDOWS1256アラビア語
- デフォルト:
UTF8
注釈
Snowflakeは、すべてのデータを UTF-8文字セットで内部に保存します。データは、Snowflakeにロードされる前に UTF-8に変換されます。
TYPE = JSON¶
COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE- 使用:
データのロードおよび外部テーブル
- 定義:
データをロードするときに、データファイルの現在の圧縮アルゴリズムを指定します。Snowflakeはこのオプションを使用して、ファイル内の圧縮データをロード用に抽出できるように、 圧縮済み データファイルの圧縮方法を検出します。
データをアンロードする際、指定された圧縮アルゴリズムを使用してデータファイルを圧縮します。
- 値:
サポートされる値
注意
AUTOデータをロードすると、圧縮アルゴリズムは自動的に検出されますが、Brotliで圧縮されたファイルは例外で、現在は自動検出できません。データをアンロードするとき、ファイルはデフォルトのgzipを使用して自動的に圧縮されます。
GZIPBZ2BROTLIBrotliで圧縮されたファイルをロード/アンロードする場合は、指定する必要があります。
ZSTDZstandard v0.8(およびそれ以上)がサポートされています。
DEFLATEDeflate圧縮されたファイル(zlibヘッダー、 RFC1950を使用)。
RAW_DEFLATE生Deflate圧縮ファイル(ヘッダーなし、 RFC1951)。
NONEデータをロードするとき、ファイルが圧縮されていないことを示します。データをアンロードするとき、アンロードされたファイルが圧縮されないことを指定します。
- デフォルト:
AUTO
DATE_FORMAT = 'string' | AUTO- 使用:
データのロードのみ
- 定義:
データファイルの日付文字列値の形式を定義します。値が指定されていない場合、または
AUTOの場合は、 DATE_INPUT_FORMAT パラメーターの値が使用されます。このファイル形式オプションは、次のアクションにのみ適用されます。
MATCH_BY_COLUMN_NAME コピーオプションを使用して、 JSON データを個別の列にロードします。
COPY ステートメント(つまり、 COPY 変換)でクエリを指定して、 JSON データを個別の列にロードします。
- デフォルト:
AUTO
TIME_FORMAT = 'string' | AUTO- 使用:
データのロードのみ
- 定義:
データファイルの時間文字列値の形式を定義します。値が指定されていない場合、または
AUTOの場合は、 TIME_INPUT_FORMAT パラメーターの値が使用されます。このファイル形式オプションは、次のアクションにのみ適用されます。
MATCH_BY_COLUMN_NAME コピーオプションを使用して、 JSON データを個別の列にロードします。
COPY ステートメント(つまり、 COPY 変換)でクエリを指定して、 JSON データを個別の列にロードします。
- デフォルト:
AUTO
TIMESTAMP_FORMAT = string' | AUTO- 使用:
データのロードのみ
- 定義:
データファイルのタイムスタンプ文字列値の形式を定義します。値が指定されていない場合、または
AUTOの場合は、 TIMESTAMP_INPUT_FORMAT パラメーターの値が使用されます。このファイル形式オプションは、次のアクションにのみ適用されます。
MATCH_BY_COLUMN_NAME コピーオプションを使用して、 JSON データを個別の列にロードします。
COPY ステートメント(つまり、 COPY 変換)でクエリを指定して、 JSON データを個別の列にロードします。
- デフォルト:
AUTO
BINARY_FORMAT = HEX | BASE64 | UTF8- 使用:
データのロードのみ
- 定義:
データファイル内のバイナリ文字列値のエンコード形式を定義します。このオプションは、テーブルのバイナリ列にデータをロードするときに使用できます。
このファイル形式オプションは、次のアクションにのみ適用されます。
MATCH_BY_COLUMN_NAME コピーオプションを使用して、 JSON データを個別の列にロードします。
COPY ステートメント(つまり、 COPY 変換)でクエリを指定して、 JSON データを個別の列にロードします。
- デフォルト:
HEX
TRIM_SPACE = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
文字列から先頭と末尾の空白を削除するかどうかを指定するブール値。
たとえば、外部データベースソフトウェアがフィールドを引用符で囲み、先頭にスペースを挿入する場合、Snowflakeはフィールドの先頭として開始引用文字ではなく先頭スペースを読み取ります(つまり、引用符はフィールドデータの文字列の一部として解釈されます)。このオプションを
TRUEに設定すると、データのロード中に不要なスペースが削除されます。このファイル形式オプションは、 MATCH_BY_COLUMN_NAME コピーオプションを使用して JSON データを個別の列にロードする場合にのみ、次のアクションに適用されます。
- デフォルト:
FALSE
MULTI_LINE = TRUE | FALSE使用方法: データの読み込みと外部テーブル
- 定義:
複数行を許すかどうかを指定するブール。MULTI_LINE が
FALSEに設定され、 JSON レコード内に改行がある場合、改行を含むレコードはエラーとして解釈されます。- デフォルト:
TRUE
NULL_IF = ( 'string1' [ , 'string2' , ... ] )- 使用:
データのロードのみ
- 定義:
SQL NULL との間の変換に使用される文字列。Snowflakeはデータロードソースのこれらの文字列を SQL NULL に置き換えます。複数の文字列を指定するには、文字列のリストを括弧で囲み、各値をコンマで区切ります。
このファイル形式オプションは、 MATCH_BY_COLUMN_NAME コピーオプションを使用して JSON データを個別の列にロードする場合にのみ、次のアクションに適用されます。
Snowflakeは、データ型に関係なく、値のすべてのインスタンスを NULL に変換することに注意してください。たとえば、
2が値として指定されている場合は、文字列または数値としての2のインスタンスすべてが変換されます。例:
NULL_IF = ('\N', 'NULL', 'NUL', '')このオプションには空の文字列を含めることができます。
- デフォルト:
\N(つまり、 NULL)
FILE_EXTENSION = 'string' | NONE- 使用:
データのアンロードのみ
- 定義:
ステージにアンロードされるファイルの拡張子を指定します。拡張子を受け入れます。目的のソフトウェアまたはサービスが読み取れるファイル拡張子を指定することは、ユーザーの責任です。
- デフォルト:
null、つまり、ファイル拡張子は形式タイプ
.json[compression]によって決定されます。ここで、compressionは、COMPRESSIONが設定されている場合、圧縮方法によって追加された拡張子です。
ENABLE_OCTAL = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
8進数の解析を可能にするブール値。
- デフォルト:
FALSE
ALLOW_DUPLICATE = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
オブジェクトフィールド名の重複を許可することを指定するブール値(最後のオブジェクトフィールド名のみが保持されます)。
- デフォルト:
FALSE
STRIP_OUTER_ARRAY = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
JSON パーサーに、外側の括弧(つまり
[ ])を削除するように指示するブール値。- デフォルト:
FALSE
STRIP_NULL_VALUES = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
null値を含むオブジェクトフィールドまたは配列要素を削除するように JSON パーサーに指示するブール値。たとえば、TRUEに設定されている場合:前
後
[null][][null,null,3][,,3]{"a":null,"b":null,"c":123}{"c":123}{"a":[1,null,2],"b":{"x":null,"y":88}}{"a":[1,,2],"b":{"y":88}}- デフォルト:
FALSE
REPLACE_INVALID_CHARACTERS = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
無効な UTF -8文字をUnicode置換文字(
�)で置き換えるかどうかを指定するブール値。このオプションは、1対1の文字置換を実行します。- 値:
TRUEに設定すると、Snowflakeは無効な UTF -8文字をUnicode置換文字に置き換えます。FALSEに設定すると、無効な UTF-8文字エンコードが検出されたときにロード操作でエラーが生成されます。- デフォルト:
FALSE
IGNORE_UTF8_ERRORS = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
UTF-8エンコードエラーがエラー状態を引き起こすかどうかを指定するブール値。
REPLACE_INVALID_CHARACTERSの代替構文です。- 値:
TRUEに設定すると、無効な UTF-8シーケンスはUnicode文字U+FFFD(つまり、「置換文字」)で警告なしに置き換えられます。FALSEに設定すると、無効な UTF-8文字エンコードが検出されたときにロード操作でエラーが生成されます。- デフォルト:
FALSE
SKIP_BYTE_ORDER_MARK = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
データファイルに存在する場合、 BOM (バイト順マーク)をスキップするかどうかを指定するブール値。BOM は、データファイルの先頭にある文字コードで、バイト順とエンコード形式を定義します。
FALSEに設定されている場合、Snowflakeはデータファイル内の BOM を認識し、 BOM がエラーの原因になるか、テーブルの最初の列にマージされる可能性があります。- デフォルト:
TRUE
TYPE = AVRO¶
COMPRESSION = AUTO | GZIP | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE- 使用:
データのロードのみ
- 定義:
データをロードするときに、データファイルの現在の圧縮アルゴリズムを指定します。Snowflakeはこのオプションを使用して、ファイル内の圧縮データをロード用に抽出できるように、 圧縮済み データファイルの圧縮方法を検出します。
データをアンロードする際、指定された圧縮アルゴリズムを使用してデータファイルを圧縮します。
- 値:
サポートされる値
注意
AUTOデータをロードすると、圧縮アルゴリズムは自動的に検出されますが、Brotliで圧縮されたファイルは例外で、現在は自動検出できません。データをアンロードするとき、ファイルはデフォルトのgzipを使用して自動的に圧縮されます。
GZIPBROTLIBrotliで圧縮されたファイルをロード/アンロードする場合は、指定する必要があります。
ZSTDZstandard v0.8(およびそれ以上)がサポートされています。
DEFLATEDeflate圧縮されたファイル(zlibヘッダー、 RFC1950を使用)。
RAW_DEFLATE生Deflate圧縮ファイル(ヘッダーなし、 RFC1951)。
NONEデータをロードするとき、ファイルが圧縮されていないことを示します。データをアンロードするとき、アンロードされたファイルが圧縮されないことを指定します。
- デフォルト:
AUTO。
注釈
ファイル圧縮とコーデック圧縮の両方が決定されるため、デフォルトの AUTO オプションを使用することをお勧めします。圧縮オプションの指定は、ブロック(コーデック)の圧縮ではなく、ファイルの圧縮を意味します。
TRIM_SPACE = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
文字列から先頭と末尾の空白を削除するかどうかを指定するブール値。
たとえば、外部データベースソフトウェアがフィールドを引用符で囲み、先頭にスペースを挿入する場合、Snowflakeはフィールドの先頭として開始引用文字ではなく先頭スペースを読み取ります(つまり、引用符はフィールドデータの文字列の一部として解釈されます)。このオプションを
TRUEに設定すると、データのロード中に不要なスペースが削除されます。このファイル形式オプションは、 MATCH_BY_COLUMN_NAME コピーオプションを使用してAvroデータを個別の列にロードする場合にのみ、次のアクションに適用されます。
- デフォルト:
FALSE
REPLACE_INVALID_CHARACTERS = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
無効な UTF -8文字をUnicode置換文字(
�)で置き換えるかどうかを指定するブール値。このオプションは、1対1の文字置換を実行します。- 値:
TRUEに設定すると、Snowflakeは無効な UTF -8文字をUnicode置換文字に置き換えます。FALSEに設定すると、無効な UTF-8文字エンコードが検出されたときにロード操作でエラーが生成されます。- デフォルト:
FALSE
NULL_IF = ( 'string1' [ , 'string2' , ... ] )- 使用:
データのロードのみ
- 定義:
SQL NULL との間の変換に使用される文字列。Snowflakeはデータロードソースのこれらの文字列を SQL NULL に置き換えます。複数の文字列を指定するには、文字列のリストを括弧で囲み、各値をコンマで区切ります。
このファイル形式オプションは、 MATCH_BY_COLUMN_NAME コピーオプションを使用してAvroデータを個別の列にロードする場合にのみ、次のアクションに適用されます。
Snowflakeは、データ型に関係なく、値のすべてのインスタンスを NULL に変換することに注意してください。たとえば、
2が値として指定されている場合は、文字列または数値としての2のインスタンスすべてが変換されます。例:
NULL_IF = ('\N', 'NULL', 'NUL', '')このオプションには空の文字列を含めることができます。
- デフォルト:
\N(つまり、 NULL)
TYPE = ORC¶
TRIM_SPACE = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
文字列から先頭と末尾の空白を削除するかどうかを指定するブール値。
たとえば、外部データベースソフトウェアがフィールドを引用符で囲み、先頭にスペースを挿入する場合、Snowflakeはフィールドの先頭として開始引用文字ではなく先頭スペースを読み取ります(つまり、引用符はフィールドデータの文字列の一部として解釈されます)。このオプションを
TRUEに設定すると、データのロード中に不要なスペースが削除されます。このファイル形式オプションは、 MATCH_BY_COLUMN_NAME コピーオプションを使用してOrcデータを個別の列にロードする場合にのみ、次のアクションに適用されます。
- デフォルト:
FALSE
REPLACE_INVALID_CHARACTERS = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
無効な UTF -8文字をUnicode置換文字(
�)で置き換えるかどうかを指定するブール値。このオプションは、1対1の文字置換を実行します。- 値:
TRUEに設定すると、Snowflakeは無効な UTF -8文字をUnicode置換文字に置き換えます。FALSEに設定すると、無効な UTF-8文字エンコードが検出されたときにロード操作でエラーが生成されます。- デフォルト:
FALSE
NULL_IF = ( 'string1' [ , 'string2' , ... ] )- 使用:
データのロードおよび外部テーブル
- 定義:
SQL NULL との間の変換に使用される文字列。Snowflakeはデータロードソースのこれらの文字列を SQL NULL に置き換えます。複数の文字列を指定するには、文字列のリストを括弧で囲み、各値をコンマで区切ります。
このファイル形式オプションは、 MATCH_BY_COLUMN_NAME コピーオプションを使用してOrcデータを個別の列にロードする場合にのみ、次のアクションに適用されます。
Snowflakeは、データ型に関係なく、値のすべてのインスタンスを NULL に変換することに注意してください。たとえば、
2が値として指定されている場合は、文字列または数値としての2のインスタンスすべてが変換されます。例:
NULL_IF = ('\N', 'NULL', 'NUL', '')このオプションには空の文字列を含めることができます。
- デフォルト:
\N(つまり、 NULL)
TYPE = PARQUET¶
COMPRESSION = AUTO | LZO | SNAPPY | NONE- 使用:
データのアンロードと外部テーブル
- 定義:
データをアンロードする際に、Parquetファイルの列の圧縮アルゴリズムを指定します。
- 値:
サポートされる値
注意
AUTOデータをロードするときに、圧縮アルゴリズムが自動的に検出されました。対応する圧縮アルゴリズム:Brotli、gzip、Lempel-Ziv-Oberhumer(LZO)、 LZ4、Snappy、またはZstandard v0.8(およびそれ以上)。. データをアンロードすると、アンロードされたファイルはデフォルトで Snappy 圧縮アルゴリズムを使用して圧縮されます。
LZOデータをアンロードするとき、ファイルはデフォルトでSnappyアルゴリズムを使用して圧縮されます。LZO 圧縮ファイルにデータをアンロードする場合は、この値を指定します。
SNAPPYデータをアンロードするとき、ファイルはデフォルトでSnappyアルゴリズムを使用して圧縮されます。オプションでこの値を指定できます。
NONEデータをロードするとき、ファイルが圧縮されていないことを示します。データをアンロードするとき、アンロードされたファイルが圧縮されないことを指定します。
- デフォルト:
AUTO
SNAPPY_COMPRESSION = TRUE | FALSE- 使用:
データのアンロードのみ
サポートされる値
注意
AUTOアンロードされたファイルは、デフォルトで Snappy 圧縮アルゴリズムを使用して圧縮されます。
SNAPPYSnappyで圧縮されたファイルをアンロードする場合に指定できます。
NONEデータをロードするとき、ファイルが圧縮されていないことを示します。データをアンロードするとき、アンロードされたファイルが圧縮されないことを指定します。
- 定義:
アンロードされたファイルが SNAPPY アルゴリズムを使用して圧縮されるかどうかを指定するブール値。
注釈
非推奨。 代わりに
COMPRESSION = SNAPPYを使用してください。- 制限事項:
データのアンロード操作についてのみサポートされています。
- デフォルト:
TRUE
BINARY_AS_TEXT = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
論理データ型が定義されていない列を UTF-8テキストとして解釈するかどうかを指定するブール値。
FALSEに設定すると、Snowflakeはこれらの列をバイナリデータとして解釈します。- デフォルト:
TRUE
注釈
Snowflakeは、潜在的な変換の問題を回避するために、 BINARY_AS_TEXT を FALSE に設定することをお勧めします。
TRIM_SPACE = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
文字列から先頭と末尾の空白を削除するかどうかを指定するブール値。
たとえば、外部データベースソフトウェアがフィールドを引用符で囲み、先頭にスペースを挿入する場合、Snowflakeはフィールドの先頭として開始引用文字ではなく先頭スペースを読み取ります(つまり、引用符はフィールドデータの文字列の一部として解釈されます)。このオプションを
TRUEに設定すると、データのロード中に不要なスペースが削除されます。このファイル形式オプションは、 MATCH_BY_COLUMN_NAME コピーオプションを使用してParquetデータを個別の列にロードする場合にのみ、次のアクションに適用されます。
- デフォルト:
FALSE
USE_LOGICAL_TYPE = TRUE | FALSE- 使用:
データのロード、ステージングされたファイルでのデータクエリ、スキーマ検出。
- 定義:
Parquet論理型を使用するかどうかを指定するブール値。このファイル形式オプションを使用すると、Snowflakeはデータのロード中にParquet論理型を解釈できます。詳細については、 Parquet理論型の定義 をご参照ください。Parquet論理型を有効にするには、新しいファイル形式オプションを作成するときに USE_LOGICAL_TYPE を TRUE に設定します。
- 制限事項:
データのアンロードには対応していません。
USE_VECTORIZED_SCANNER = TRUE | FALSE- 使用:
ステージングされたファイルでのデータのロードとデータクエリ
- 定義:
Parquetファイルのロード時にベクトル化されたスキャナーを使用するかどうかを指定するブール値。
- デフォルト:
FALSE。将来の BCR では、デフォルト値はTRUEになります。
ベクトル化されたスキャナーを使用すると、Parquetファイルをロードする際の待ち時間を大幅に短縮できます。このスキャナーは、 Parquet ファイルの列指向形式に適しているからです。スキャナーは、選択された列のサブセットなど、Parquetファイルの関連セクションのみをメモリにダウンロードします。
USE_VECTORIZED_SCANNERがTRUEに設定されている場合、ベクトル化されたスキャナーの動作は以下のようになります。設定された実際の値にかかわらず、
BINARY_AS_TEXTオプションは常にFALSEとして扱われ、USE_LOGICAL_TYPEオプションは常にTRUEとして扱われます。ベクトル化されたスキャナーはParquetマップタイプをサポートしています。マップタイプのスキャンの出力は以下の通りです。
"my_map": { "k1": "v1", "k2": "v2" }
ベクトル化されたスキャナーは、次の例が示すように、出力で
NULL値を表示します。"person": { "name": "Adam", "nickname": null, "age": 34, "phone_numbers": [ "1234567890", "0987654321", null, "6781234590" ] }
ベクトル化されたスキャナーは、時間とタイムスタンプを次のように扱います。
Parquet
Snowflakeのベクトル化されたスキャナー
TimeType(isAdjustedToUtc=True/False, unit=MILLIS/MICROS/NANOS)
TIME
TimestampType(isAdjustedToUtc=True, unit=MILLIS/MICROS/NANOS)
TIMESTAMP_LTZ
TimestampType(isAdjustedToUtc=False, unit=MILLIS/MICROS/NANOS)
TIMESTAMP_NTZ
INT96
TIMESTAMP_LTZ
USE_VECTORIZED_SCANNERがFALSEに設定されている場合、スキャナーは以下の動作をします。このオプションはParquetマップをサポートしていません。 マップタイプのスキャンの出力は以下の通りです。
"my_map": { "key_value": [ { "key": "k1", "value": "v1" }, { "key": "k2", "value": "v2" } ] }
次の例が示すように、このオプションはスキャン出力で
NULL値を明示的に表示しません。"person": { "name": "Adam", "age": 34 "phone_numbers": [ "1234567890", "0987654321", "6781234590" ] }
このオプションは、時間とタイムスタンプを次のように扱います。
Parquet
USE_LOGICAL_TYPE = TRUE の場合
USE_LOGICAL_TYPE = FALSE の場合
TimeType(isAdjustedToUtc=True/False, unit=MILLIS/MICROS)
TIME
TIME (ConvertedType がある場合)
INTEGER (ConvertedType がない場合)
TimeType(isAdjustedToUtc=True/False, unit=NANOS)
TIME
INTEGER
TimestampType(isAdjustedToUtc=True, unit=MILLIS/MICROS)
TIMESTAMP_LTZ
TIMESTAMP_NTZ
TimestampType(isAdjustedToUtc=True, unit=NANOS)
TIMESTAMP_LTZ
INTEGER
TimestampType(isAdjustedToUtc=False, unit=MILLIS/MICROS)
TIMESTAMP_NTZ
TIMESTAMP_LTZ (ConvertedType がある場合)
INTEGER (ConvertedType がない場合)
TimestampType(isAdjustedToUtc=False, unit=NANOS)
TIMESTAMP_NTZ
INTEGER
INT96
TIMESTAMP_NTZ
TIMESTAMP_NTZ
REPLACE_INVALID_CHARACTERS = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
無効な UTF -8文字をUnicode置換文字(
�)で置き換えるかどうかを指定するブール値。このオプションは、1対1の文字置換を実行します。- 値:
TRUEに設定すると、Snowflakeは無効な UTF -8文字をUnicode置換文字に置き換えます。FALSEに設定すると、無効な UTF-8文字エンコードが検出されたときにロード操作でエラーが生成されます。- デフォルト:
FALSE
NULL_IF = ( 'string1' [ , 'string2' , ... ] )- 使用:
データのロードのみ
- 定義:
SQL NULL との間の変換に使用される文字列。Snowflakeはデータロードソースのこれらの文字列を SQL NULL に置き換えます。複数の文字列を指定するには、文字列のリストを括弧で囲み、各値をコンマで区切ります。
このファイル形式オプションは、 MATCH_BY_COLUMN_NAME コピーオプションを使用してParquetデータを個別の列にロードする場合にのみ、次のアクションに適用されます。
Snowflakeは、データ型に関係なく、値のすべてのインスタンスを NULL に変換することに注意してください。たとえば、
2が値として指定されている場合は、文字列または数値としての2のインスタンスすべてが変換されます。例:
NULL_IF = ('\N', 'NULL', 'NUL', '')このオプションには空の文字列を含めることができます。
- デフォルト:
\N(つまり、 NULL)
TYPE = XML¶
COMPRESSION = AUTO | GZIP | BZ2 | BROTLI | ZSTD | DEFLATE | RAW_DEFLATE | NONE- 使用:
データのロードのみ
- 定義:
データをロードするときに、データファイルの現在の圧縮アルゴリズムを指定します。Snowflakeはこのオプションを使用して、ファイル内の圧縮データをロード用に抽出できるように、 圧縮済み データファイルの圧縮方法を検出します。
データをアンロードする際、指定された圧縮アルゴリズムを使用してデータファイルを圧縮します。
- 値:
サポートされる値
注意
AUTOデータをロードすると、圧縮アルゴリズムは自動的に検出されますが、Brotliで圧縮されたファイルは例外で、現在は自動検出できません。データをアンロードするとき、ファイルはデフォルトのgzipを使用して自動的に圧縮されます。
GZIPBZ2BROTLIBrotliで圧縮されたファイルをロード/アンロードする場合は、指定する必要があります。
ZSTDZstandard v0.8(およびそれ以上)がサポートされています。
DEFLATEDeflate圧縮されたファイル(zlibヘッダー、 RFC1950を使用)。
RAW_DEFLATE生Deflate圧縮ファイル(ヘッダーなし、 RFC1951)。
NONEデータをロードするとき、ファイルが圧縮されていないことを示します。データをアンロードするとき、アンロードされたファイルが圧縮されないことを指定します。
- デフォルト:
AUTO
IGNORE_UTF8_ERRORS = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
UTF-8エンコードエラーがエラー状態を引き起こすかどうかを指定するブール値。
REPLACE_INVALID_CHARACTERSの代替構文です。- 値:
TRUEに設定すると、無効な UTF-8シーケンスはUnicode文字U+FFFD(つまり、「置換文字」)で警告なしに置き換えられます。FALSEに設定すると、無効な UTF-8文字エンコードが検出されたときにロード操作でエラーが生成されます。- デフォルト:
FALSE
PRESERVE_SPACE = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
XML パーサーが要素コンテンツの先頭と後続のスペースを保持するかどうかを指定するブール値。
- デフォルト:
FALSE
STRIP_OUTER_ELEMENT = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
XML パーサーが外側の XML 要素を取り除き、2番目のレベルの要素を別のドキュメントとして公開するかどうかを指定するブール値。
- デフォルト:
FALSE
DISABLE_AUTO_CONVERT = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
XML パーサーがテキストからネイティブ表現への数値およびブール値の自動変換を無効にするかどうかを指定するブール値。
- デフォルト:
FALSE
REPLACE_INVALID_CHARACTERS = TRUE | FALSE- 使用:
データのロードおよび外部テーブル
- 定義:
無効な UTF -8文字をUnicode置換文字(
�)で置き換えるかどうかを指定するブール値。このオプションは、1対1の文字置換を実行します。- 値:
TRUEに設定すると、Snowflakeは無効な UTF -8文字をUnicode置換文字に置き換えます。FALSEに設定すると、無効な UTF-8文字エンコードが検出されたときにロード操作でエラーが生成されます。- デフォルト:
FALSE
SKIP_BYTE_ORDER_MARK = TRUE | FALSE- 使用:
データのロードのみ
- 定義:
入力ファイルに存在する BOM (バイト順マーク)をスキップするかどうかを指定するブール値。BOM は、データファイルの先頭にある文字コードで、バイト順とエンコード形式を定義します。
FALSEに設定されている場合、Snowflakeはデータファイル内の BOM を認識し、 BOM がエラーの原因になるか、テーブルの最初の列にマージされる可能性があります。- デフォルト:
TRUE
アクセス制御の要件¶
この操作の実行に使用される ロール には、少なくとも次の 権限 が必要です。
権限 |
オブジェクト |
注意 |
|---|---|---|
OWNERSHIP |
ステージ |
ALTER STAGE ... SET DIRECTORY を使用してステージのプロパティを変更したり、ステージ上のディレクトリテーブルを有効または無効にしたりするために必要です。 OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege). |
WRITE |
ステージ |
ALTER STAGE ... REFRESH を使用してメタデータをリフレッシュするために必要です。 |
Operating on an object in a schema requires at least one privilege on the parent database and at least one privilege on the parent schema.
指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。
セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。
使用上の注意¶
S3アクセスポイントを使用する外部ステージに、
ストレージ統合を使用している場合は、統合の IAM ポリシーを構成して、S3アクセスポイントにアクセス許可を付与する必要があります。詳細については、 オプション1: Amazon S3にアクセスするためのSnowflakeストレージ統合の構成 をご参照ください。
マルチリージョンアクセスポイントはサポートされていません。
メタデータについて。
注意
Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。
例¶
my_int_stage の名前を new_int_stage に変更します。
ALTER STAGE my_int_stage RENAME TO new_int_stage;
my_ext_stage ( CREATE STAGE の例で作成)を変更して、 files フォルダーの new という名前のサブフォルダーを参照するように URL を変更します。このステージを参照する COPY INTO <テーブル> コマンドがいずれかの記録でデータエラーを検出した場合、ファイルをスキップします。他のすべてのコピーオプションは、デフォルト値に設定されます。
S3バケットが中国のリージョンにある場合は、 s3china:// プロトコルを URL パラメーターに使用します。
ALTER STAGE my_ext_stage SET URL='s3://loading/files/new/' COPY_OPTIONS = (ON_ERROR='skip_file');
my_ext_stage を変更して、提供された認証情報を myint という名前のストレージ統合への参照に置き換えます。
ALTER STAGE my_ext_stage SET STORAGE_INTEGRATION = myint;
my_ext_stage を変更して、ステージの新しいアクセスキー ID とシークレットアクセスキーを指定します。
ALTER STAGE my_ext_stage SET CREDENTIALS=(AWS_KEY_ID='d4c3b2a1' AWS_SECRET_KEY='z9y8x7w6');(上記の例で使用されている認証情報の値は、説明のみを目的としています)
my_ext_stage3 を変更して、ステージの暗号化タイプを AWS_SSE_S3 サーバー側暗号化に変更します。
ALTER STAGE my_ext_stage3 SET ENCRYPTION=(TYPE='AWS_SSE_S3');
ディレクトリテーブルの例¶
mystage という名前の既存のステージにディレクトリテーブルを追加します。
ALTER STAGE mystage SET DIRECTORY = ( ENABLE = TRUE );
mystage という名前のステージで、ディレクトリテーブルのメタデータを手動で更新します。
ALTER STAGE mystage REFRESH;
+-------------------------+----------------+-------------------------------+
| file | status | description |
|-------------------------+----------------+-------------------------------|
| data/json/myfile.json | REGISTERED_NEW | File registered successfully. |
+-------------------------+----------------+-------------------------------+
mystage という名前のステージの data パス内にあるファイルの、ディレクトリテーブルのメタデータを手動で更新します。
ALTER STAGE mystage REFRESH SUBPATH = 'data';