Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: SQL Server 2017 (14.x) en latere versies
van Azure SQL Managed Instance
Hiermee maakt u een nieuwe SQL-grafiektabel als een NODE of een EDGE tabel.
Opmerking
Zie CREATE TABLE (Transact-SQL) voor standaardinstructies voor Transact-SQL.
Transact-SQL syntaxis-conventies
Syntaxis
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
In dit document worden alleen argumenten vermeld die betrekking hebben op SQL Graph. Zie CREATE TABLE (Transact-SQL) voor een volledige lijst en beschrijving van ondersteunde argumenten
database_name
Is de naam van de database waarin de tabel wordt gemaakt.
database_name moet de naam van een bestaande database opgeven. Als dit niet is opgegeven, wordt database_name standaard ingesteld op de huidige database. De aanmelding voor de huidige verbinding moet zijn gekoppeld aan een bestaande gebruikers-id in de database die is opgegeven door database_name en die gebruikers-id moet CREATE TABLE-machtigingen hebben.
schema_name
Is de naam van het schema waartoe de nieuwe tabel behoort.
table_name
Is de naam van het knooppunt of de edge-tabel. Tabelnamen moeten de regels voor id's volgen.
table_name mag maximaal 128 tekens lang zijn, met uitzondering van lokale tijdelijke tabelnamen (namen die zijn voorafgegaan door één nummerteken (#)) die niet langer mogen zijn dan 116 tekens.
KNOOP
Hiermee maakt u een knooppunttabel.
EDGE
Hiermee maakt u een randtabel.
tabelbeperking
Hiermee geeft u de eigenschappen van een PRIMAIRE SLEUTEL, UNIEKE, REFERERENDE SLEUTEL, VERBINDINGSbeperking, een CHECK-beperking of een STANDAARDdefinitie die aan een tabel wordt toegevoegd.
Opmerking
Verbindingsbeperking is alleen van toepassing op een edge-tabeltype.
ON { partition_scheme | bestandsgroep | "standaard" }
Hiermee geeft u het partitieschema of de bestandsgroep op waarop de tabel is opgeslagen. Als partition_scheme is opgegeven, moet de tabel een gepartitioneerde tabel zijn waarvan de partities worden opgeslagen in een set van een of meer bestandsgroepen die zijn opgegeven in partition_scheme. Als de bestandsgroep is opgegeven, wordt de tabel opgeslagen in de benoemde bestandsgroep. De bestandsgroep moet bestaan in de database. Als 'standaard' is opgegeven of als ON helemaal niet is opgegeven, wordt de tabel opgeslagen in de standaardbestandsgroep. Het opslagmechanisme van een tabel zoals opgegeven in CREATE TABLE kan vervolgens niet worden gewijzigd.
ON {partition_scheme | bestandsgroep | "standaard"}
Kan ook worden opgegeven in een PRIMAIRE SLEUTEL of UNIEKE beperking. Met deze beperkingen worden indexen gemaakt. Als de bestandsgroep is opgegeven, wordt de index opgeslagen in de benoemde bestandsgroep. Als 'standaard' is opgegeven of als ON helemaal niet is opgegeven, wordt de index opgeslagen in dezelfde bestandsgroep als de tabel. Als met de beperking PRIMAIRE SLEUTEL of UNIEK een geclusterde index wordt gemaakt, worden de gegevenspagina's voor de tabel opgeslagen in dezelfde bestandsgroep als de index. Als CLUSTERED is opgegeven of als de beperking anders een geclusterde index maakt en er een partition_scheme wordt opgegeven die verschilt van de partition_scheme of bestandsgroep van de tabeldefinitie, of omgekeerd, wordt alleen de definitie van de beperking uitgevoerd en wordt de andere genegeerd.
Opmerkingen
Het maken van een tijdelijke tabel als knooppunt of edge-tabel wordt niet ondersteund.
Het maken van een knooppunt of edge-tabel als een tijdelijke tabel wordt niet ondersteund.
Stretch-database wordt niet ondersteund voor een knooppunt- of edge-tabel.
Belangrijk
Stretch Database is afgeschaft in SQL Server 2022 (16.x) en Azure SQL Database. Deze functie wordt verwijderd in een toekomstige versie van de database-engine. Vermijd het gebruik van deze functie in nieuwe ontwikkelwerkzaamheden en plan om toepassingen te wijzigen die momenteel gebruikmaken van deze functie.
Knooppunt- of edge-tabellen kunnen geen externe tabellen zijn (geen PolyBase-ondersteuning voor grafiektabellen).
Een niet-gepartitioneerde grafiekknooppunt/edge-tabel kan niet worden gewijzigd in een gepartitioneerd grafiekknooppunt/edge-tabel.
Voorbeelden
Eén.
NODE Een tabel maken
In het volgende voorbeeld ziet u hoe u een NODE tabel maakt
CREATE TABLE Person (
ID INTEGER PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100)
) AS NODE;
B.
EDGE Een tabel maken
De volgende voorbeelden laten zien hoe u tabellen maakt EDGE
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;
In het volgende voorbeeld wordt een regel gebruikt die alleen mensen kunnen bevriend zijn met andere personen, wat betekent dat deze rand geen verwijzing naar een ander knooppunt dan Persoon toestaat.
/* Create friend edge table with CONSTRAINT, restricts for nodes and it direction */
CREATE TABLE dbo.FriendOf(
CONSTRAINT cnt_Person_FriendOf_Person
CONNECTION (dbo.Person TO dbo.Person)
)AS EDGE;
Zie ook
ALTER TABLE table_constraint
ALTER TABLE (Transact-SQL)
INSERT (SQL Graph)]
Grafiekverwerking met SQL Server 2017