Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: SQL Server 2017 (14.x) i nowsze wersje bazy danych
SQL Sql Database azure SQL
Database
w usłudze Microsoft Fabric
Dodaje co najmniej jeden wiersz do node tabeli lub edge w programie SQL Server.
Transact-SQL konwencje składni
INSERT Into node table syntax (WSTAW do składni tabeli węzłów)
Składnia wstawiania do tabeli Node jest taka sama jak w przypadku regularnej tabeli.
[ WITH <common_table_expression> [ ,...n ] ]
INSERT
{
[ TOP ( expression ) [ PERCENT ] ]
[ INTO ]
{ <object> | rowset_function_limited
[ WITH ( <Table_Hint_Limited> [ ...n ] ) ]
}
{
[ (column_list) ] | [(<edge_table_column_list>)]
[ <OUTPUT Clause> ]
{ VALUES ( { DEFAULT | NULL | expression } [ ,...n ] ) [ ,...n ]
| derived_table
| execute_statement
| <dml_table_source>
| DEFAULT VALUES
}
}
}
[;]
<object> ::=
{
[ server_name . database_name . schema_name .
| database_name .[ schema_name ] .
| schema_name .
]
node_table_name | edge_table_name
}
<dml_table_source> ::=
SELECT <select_list>
FROM ( <dml_statement_with_output_clause> )
[AS] table_alias [ ( column_alias [ ,...n ] ) ]
[ WHERE <on_or_where_search_condition> ]
[ OPTION ( <query_hint> [ ,...n ] ) ]
<on_or_where_search_condition> ::=
{ <search_condition_with_match> | <search_condition> }
<search_condition_with_match> ::=
{ <graph_predicate> | [ NOT ] <predicate> | ( <search_condition> ) }
[ AND { <graph_predicate> | [ NOT ] <predicate> | ( <search_condition> ) } ]
[ ,...n ]
<search_condition> ::=
{ [ NOT ] <predicate> | ( <search_condition> ) }
[ { AND | OR } [ NOT ] { <predicate> | ( <search_condition> ) } ]
[ ,...n ]
<graph_predicate> ::=
MATCH( <graph_search_pattern> [ AND <graph_search_pattern> ] [ , ...n] )
<graph_search_pattern>::=
<node_alias> { { <-( <edge_alias> )- | -( <edge_alias> )-> } <node_alias> }
<edge_table_column_list> ::=
($from_id, $to_id, [column_list])
Arguments
Note
W tym artykule opisano argumenty związane z grafem SQL. Aby uzyskać pełną listę i opis obsługiwanych argumentów w instrukcji INSERT, zobacz INSERT TABLE (Transact-SQL). Aby uzyskać standardowe instrukcje Transact-SQL, zobacz INSERT TABLE (Transact-SQL).
INTO
Jest opcjonalnym słowem kluczowym, które może być używane między INSERT tabelą docelową i tabelą docelową.
MATCH search_condition_with_match Klauzulę można użyć w podzapytaniu podczas wstawiania do tabeli węzła lub krawędzi. Aby uzyskać MATCH składnię instrukcji, zobacz GRAPH MATCH (Transact-SQL).
graph_search_pattern Wzorzec wyszukiwania podany w MATCH klauzuli w ramach predykatu grafu.
edge_table_column_list Użytkownicy muszą podać wartości i $from_id$to_id podczas wstawiania do krawędzi. Zwracany jest błąd, jeśli do tych kolumn nie podano wartości lub do tych kolumn zostaną wstawione listy NUL.
Remarks
- Wstawianie do węzła jest takie samo jak wstawianie do dowolnej tabeli relacyjnej. Wartości kolumny
$node_idsą generowane automatycznie. - Podczas wstawiania wierszy do tabeli krawędzi należy podać wartości dla
$from_idkolumn i$to_id. - Wstawianie zbiorcze dla tabeli węzłów jest takie samo jak w przypadku tabeli relacyjnej.
- Przed wstawieniem zbiorczym do tabeli krawędzi należy zaimportować tabele węzłów.
$from_id$to_idNastępnie można wyodrębnić wartości z$node_idkolumny tabeli węzłów i wstawić je jako krawędzie. - W usłudze Fabric SQL Database program SQL Graph jest dozwolony, ale tabele node i Edge nie będą dublować w usłudze Fabric OneLake.
Permissions
Uprawnienie INSERT jest wymagane w tabeli docelowej.
Uprawnienia INSERT są domyślne dla członków stałej roli serwera sysadmin , db_owner i db_datawriter stałych ról bazy danych i właściciela tabeli. Członkowie administratorów systemu, db_owner i ról db_securityadmin , a właściciel tabeli może przenieść uprawnienia do innych użytkowników.
Aby wykonać operację INSERT z opcją BULK funkcji OPENROWSET, musisz być członkiem stałej roli serwera sysadmin lub roli serwera stałego bulkadmin .
Examples
A. Wstawianie do tabeli węzłów
Poniższy przykład tworzy tabelę Person węzłów i wstawia dwa wiersze do tej tabeli.
-- Create person node table
CREATE TABLE dbo.Person (ID integer PRIMARY KEY, name varchar(50)) AS NODE;
-- Insert records for Alice and John
INSERT INTO dbo.Person VALUES (1, 'Alice');
INSERT INTO dbo.Person VALUES (2,'John');
B. Wstaw do tabeli brzegowej
Poniższy przykład tworzy tabelę friend krawędzi i wstawia krawędź do tabeli.
-- Create friend edge table
CREATE TABLE dbo.friend (start_date DATE) AS EDGE;
-- Create a friend edge, that connect Alice and John
INSERT INTO dbo.friend VALUES ((SELECT $node_id FROM dbo.Person WHERE name = 'Alice'),
(SELECT $node_id FROM dbo.Person WHERE name = 'John'), '9/15/2011');