View a markdown version of this page

CREATE TABLE - Amazon Aurora DSQL

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

CREATE TABLE

CREATE TABLE 可定義新的資料表。

CREATE TABLE [ IF NOT EXISTS ] table_name ( [ { column_name data_type [ STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT } ] [ column_constraint [ ... ] ] | table_constraint | LIKE source_table [ like_option ... ] } [, ... ] ] ) where column_constraint is: [ CONSTRAINT constraint_name ] { NOT NULL | NULL | CHECK ( expression )| DEFAULT default_expr | GENERATED ALWAYS AS ( generation_expr ) STORED | GENERATED { ALWAYS | BY DEFAULT } AS IDENTITY ( sequence_options ) | UNIQUE [ NULLS [ NOT ] DISTINCT ] index_parameters | PRIMARY KEY index_parameters | and table_constraint is: [ CONSTRAINT constraint_name ] { CHECK ( expression ) | UNIQUE [ NULLS [ NOT ] DISTINCT ] ( column_name [, ... ] ) index_parameters | PRIMARY KEY ( column_name [, ... ] ) index_parameters | and like_option is: { INCLUDING | EXCLUDING } { COMMENTS | CONSTRAINTS | DEFAULTS | GENERATED | IDENTITY | INDEXES | STATISTICS | ALL } index_parameters in UNIQUE, and PRIMARY KEY constraints are: [ INCLUDE ( column_name [, ... ] ) ]

身分資料欄

注意

使用身分資料欄時,應仔細考慮快取值。如需詳細資訊,請參閱 CREATE SEQUENCE 頁面上的重要標註。

如需如何根據工作負載模式以最佳方式使用身分資料欄的指引,請參閱 使用序列和身分資料欄

GENERATED { ALWAYS | BY DEFAULT } AS IDENTITY ( sequence_options ) 子句會將資料欄建立為身分資料欄。它將有一個隱含序列連接到它,在新插入的資料列中,資料欄將自動具有來自指派給它的序列的值。這類資料欄隱含為 NOT NULL

子句ALWAYS和 會BY DEFAULT決定在 INSERTUPDATE命令中明確處理使用者指定值的方式。

INSERT命令中,如果選取 ALWAYS ,則只有在INSERT陳述式指定 時,才會接受使用者指定的值OVERRIDING SYSTEM VALUE。如果選取 BY DEFAULT ,則使用者指定的值優先。

UPDATE命令中,如果選取 ALWAYS ,則會DEFAULT拒絕將資料欄更新為 以外的任何值。BY DEFAULT 如果選取 ,則欄可以正常更新。( UPDATE命令沒有 OVERRIDING子句。)

sequence_options 子句可用來覆寫序列的參數。可用的選項包括針對 顯示的選項CREATE SEQUENCE,加上 SEQUENCE NAME name。如果沒有 SEQUENCE NAME,系統會為序列選擇未使用的名稱。

儲存模式

選用的 STORAGE 子句會設定資料欄的儲存模式。使用這些選項來控制可變長度資料類型的壓縮行為,例如 JSON

Amazon Aurora DSQL 會在超過特定大小時壓縮某些資料類型。若要停用此行為,請使用 PLAINEXTERNAL選項。

PLAIN

Aurora DSQL 會在不壓縮的情況下內嵌存放資料。這是固定長度資料類型的唯一選項,例如 integer。使用此選項可停用某些可變長度類型的壓縮。

MAIN | EXTENDED | DEFAULT

MAIN 如果基礎資料類型支援壓縮, 和 EXTENDED 允許選擇性壓縮資料欄。 DEFAULT 會將儲存模式設定為資料欄資料類型的預設模式。

EXTERNAL

Aurora DSQL 目前不支援 TOAST 資料表,但會EXTERNAL停用支援壓縮的資料類型壓縮。