github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/sql/opt/optbuilder/testdata/create_table (about)

     1  # No AS clause.
     2  build
     3  CREATE TABLE ab (a INT PRIMARY KEY, b INT)
     4  ----
     5  create-table
     6   └── CREATE TABLE ab (a INT8 PRIMARY KEY, b INT8)
     7  
     8  # With AS clause.
     9  build
    10  CREATE TABLE ab (a, b) AS SELECT 1, 2
    11  ----
    12  create-table
    13   ├── CREATE TABLE ab (a, b) AS SELECT 1, 2
    14   └── project
    15        ├── columns: rowid:3 "?column?":1!null "?column?":2!null
    16        ├── project
    17        │    ├── columns: "?column?":1!null "?column?":2!null
    18        │    ├── values
    19        │    │    └── ()
    20        │    └── projections
    21        │         ├── 1 [as="?column?":1]
    22        │         └── 2 [as="?column?":2]
    23        └── projections
    24             └── unique_rowid() [as=rowid:3]
    25  
    26  # Ensure that constraints are hoisted.
    27  build
    28  CREATE TABLE foo (a INT REFERENCES bar(a), b INT REFERENCES baz(b))
    29  ----
    30  create-table
    31   └── CREATE TABLE foo (a INT8, b INT8, FOREIGN KEY (a) REFERENCES bar (a), FOREIGN KEY (b) REFERENCES baz (b))
    32  
    33  # Schema does not exist.
    34  build
    35  CREATE TABLE unknown.ab (a INT PRIMARY KEY)
    36  ----
    37  error (3F000): cannot create "unknown.ab" because the target database or schema does not exist
    38  
    39  # Schema can only be created in public schema.
    40  build
    41  CREATE TABLE t.crdb_internal.ab (a INT PRIMARY KEY)
    42  ----
    43  error (42602): schema cannot be modified: "t.crdb_internal"
    44  
    45  # Too few input columns.
    46  build
    47  CREATE TABLE ab (a, b) AS SELECT 1
    48  ----
    49  error (42601): CREATE TABLE specifies 2 column names, but data source has 1 column
    50  
    51  # Too many input columns.
    52  build
    53  CREATE TABLE ab (a, b) AS SELECT 1, 2, 3
    54  ----
    55  error (42601): CREATE TABLE specifies 2 column names, but data source has 3 columns
    56  
    57  # Non-existent column.
    58  build
    59  CREATE TABLE ab (a, b) AS SELECT a
    60  ----
    61  error (42703): column "a" does not exist