CREATE TABLE (граф SQL)CREATE TABLE (SQL Graph)

ОБЛАСТЬ ПРИМЕНЕНИЯ: ДаSQL Server 2017 и более поздних версий НетБаза данных SQL Azure НетAzure Synapse Analytics (Хранилище данных SQL) НетParallel Data Warehouse APPLIES TO: YesSQL Server 2017 and later NoAzure SQL Database NoAzure Synapse Analytics (SQL DW) NoParallel Data Warehouse

Создает новую таблицу графа SQL как таблицу NODE или EDGE.Creates a new SQL graph table as either a NODE or an EDGE table.

Примечание

Сведения о стандартных инструкциях Transact-SQL см. в разделе CREATE TABLE (Transact-SQL).For standard Transact-SQL statements, see CREATE TABLE (Transact-SQL).

Значок ссылки на раздел Синтаксические обозначения в Transact-SQLTopic link icon Transact-SQL Syntax Conventions

СинтаксисSyntax

CREATE TABLE   
    { database_name.schema_name.table_name | schema_name.table_name | table_name }
    ( { <column_definition> } 
       | <computed_column_definition>
       | <column_set_definition>
       | [ <table_constraint> ] [ ,... n ]
       | [ <table_index> ] }
          [ ,...n ]
    )   
    AS [ NODE | EDGE ]
    [ ON { partition_scheme_name ( partition_column_name )
           | filegroup
           | "default" } ]
[ ; ] 

< table_constraint > ::=
[ CONSTRAINT constraint_name ]
{
    { PRIMARY KEY | UNIQUE }
        [ CLUSTERED | NONCLUSTERED ]
        (column [ ASC | DESC ] [ ,...n ] )
        [
            WITH FILLFACTOR = fillfactor
           |WITH ( <index_option> [ , ...n ] )
        ]
        [ ON { partition_scheme_name (partition_column_name)
            | filegroup | "default" } ]
    | FOREIGN KEY
        ( column [ ,...n ] )
        REFERENCES referenced_table_name [ ( ref_column [ ,...n ] ) ]
        [ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ]
        [ ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ]
        [ NOT FOR REPLICATION ]
    | CONNECTION
        ( { node_table TO node_table } 
          [ , {node_table TO node_table }]
          [ , ...n ]
        )
        [ ON DELETE { NO ACTION | CASCADE } ]
    | CHECK [ NOT FOR REPLICATION ] ( logical_expression )

АргументыArguments

В этом документе описываются только аргументы, относящиеся к SQL Graph.This document lists only arguments pertaining to SQL graph. Полный список и описание поддерживаемых аргументов см. в разделе CREATE TABLE (Transact-SQL).For a full list and description of supported arguments, see CREATE TABLE (Transact-SQL)

database_name database_name
Имя базы данных, в которой создается таблица.Is the name of the database in which the table is created. Параметр database_name должен указывать имя существующей базы данных.database_name must specify the name of an existing database. Если не указано, в качестве database_name по умолчанию выбирается текущая база данных.If not specified, database_name defaults to the current database. Имя входа для текущего соединения должно быть связано с идентификатором пользователя, существующего в базе данных, указанной аргументом database_name, а этот пользователь должен обладать разрешениями CREATE TABLE.The login for the current connection must be associated with an existing user ID in the database specified by database_name, and that user ID must have CREATE TABLE permissions.

schema_name schema_name
Имя схемы, которой принадлежит новая таблица.Is the name of the schema to which the new table belongs.

table_name table_name
Это имя таблицы узлов или граничной таблицы.Is the name of the node or edge table. Имена таблиц должны соответствовать правилам для идентификаторов.Table names must follow the rules for identifiers. Аргумент table_name может состоять не более чем из 128 символов, за исключением имен локальных временных таблиц (имена с префиксом из одного символа решетки #), длина которых не должна превышать 116 символов.table_name can be a maximum of 128 characters, except for local temporary table names (names prefixed with a single number sign (#)) that cannot exceed 116 characters.

NODENODE
Создает таблицу узлов.Creates a node table.

EDGEEDGE
Создает граничную таблицу.Creates an edge table.

table_constraint table_constraint
Задает свойства ограничений PRIMARY KEY, UNIQUE, FOREIGN KEY, CONNECTION или CHECK либо определения DEFAULT, добавленного в таблицу.Specifies the properties of a PRIMARY KEY, UNIQUE, FOREIGN KEY, CONNECTION constraint, a CHECK constraint, or a DEFAULT definition added to a table

ON { partition_scheme | filegroup | "default" }ON { partition_scheme | filegroup | "default" }
Указывает схему секционирования или файловую группу, в которой хранится таблица.Specifies the partition scheme or filegroup on which the table is stored. Если аргумент partition_scheme указан, таблица будет разбита на секции, хранимые в одной или нескольких файловых группах, указанных в аргументе partition_scheme.If partition_scheme is specified, the table is to be a partitioned table whose partitions are stored on a set of one or more filegroups specified in partition_scheme. Если указан аргумент filegroup, таблица сохраняется в файловой группе с таким именем.If filegroup is specified, the table is stored in the named filegroup. Это должна быть существующая файловая группа в базе данных.The filegroup must exist within the database. Если указано значение "default" или параметр ON не определен вообще, таблица сохраняется в файловой группе по умолчанию.If "default" is specified, or if ON is not specified at all, the table is stored on the default filegroup. Механизм хранения таблицы, указанный в инструкции CREATE TABLE, изменить в дальнейшем невозможно.The storage mechanism of a table as specified in CREATE TABLE cannot be subsequently altered.

ON {partition_scheme | filegroup | "default"}ON {partition_scheme | filegroup | "default"}
Также может указываться в ограничении PRIMARY KEY или UNIQUE.Can also be specified in a PRIMARY KEY or UNIQUE constraint. С помощью этих ограничений создаются индексы.These constraints create indexes. Если указан аргумент filegroup, индекс сохраняется в файловой группе с таким именем.If filegroup is specified, the index is stored in the named filegroup. Если указано значение "default" или параметр ON не определен вообще, индекс сохраняется в той же файловой группе, что и таблица.If "default" is specified, or if ON is not specified at all, the index is stored in the same filegroup as the table. Если ограничение PRIMARY KEY или UNIQUE создает кластеризованный индекс, страницы данных таблицы сохраняются в той же файловой группе, что и индекс.If the PRIMARY KEY or UNIQUE constraint creates a clustered index, the data pages for the table are stored in the same filegroup as the index. Если ограничение создает кластеризованный индекс (с помощью параметра CLUSTERED или другим способом), а указанный аргумент partition_scheme отличается от аргументов partition_scheme и filegroup из определения таблицы, либо, наоборот, принимается во внимание только определение ограничения, а все остальное не учитывается.If CLUSTERED is specified or the constraint otherwise creates a clustered index, and a partition_scheme is specified that differs from the partition_scheme or filegroup of the table definition, or vice-versa, only the constraint definition will be honored, and the other will be ignored.

RemarksRemarks

Создание временной таблицы в качестве таблицы узлов или граничной таблицы не поддерживается.Creating a temporary table as node or edge table is not supported.

Создание таблицы узлов или граничной таблицы в качестве временной таблицы не поддерживается.Creating a node or edge table as a temporal table is not supported.

Stretch Database не поддерживается для таблицы узлов или граничной таблицы.Stretch database is not supported for node or edge table.

Таблицы узлов или граничные таблицы не могут быть внешними (поддержка PolyBase для графовых таблиц отсутствует).Node or edge tables cannot be external tables (no PolyBase support for graph tables).

Несекционированную таблицу узлов графа или граничную таблицу невозможно преобразовать в секционированную.A non-partitioned graph node/edge table cannot be altered into a partitioned graph node/edge table.

ПримерыExamples

A.A. Создание таблицы NODECreate a NODE table

В следующем примере показано создание таблицы NODE.The following example shows how to create a NODE table

 CREATE TABLE Person (
        ID INTEGER PRIMARY KEY, 
        name VARCHAR(100), 
        email VARCHAR(100)
 ) AS NODE;

Б.B. Создание таблицы EDGECreate an EDGE table

В следующем примере показано создание таблиц EDGE.The following examples show how to create EDGE tables

 CREATE TABLE friends (
    id integer PRIMARY KEY,
    start_date date
 ) AS EDGE;

 -- Create a likes edge table, this table does not have any user defined attributes   
 CREATE TABLE likes AS EDGE;

См. также:See Also

ALTER TABLE table_constraint ALTER TABLE table_constraint
ALTER TABLE (Transact-SQL) ALTER TABLE (Transact-SQL)
INSERT (граф SQL)INSERT (SQL Graph)]
Graph Processing with SQL Server 2017 (Работа с графами в SQL Server 2017)Graph processing with SQL Server 2017