Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à : SQL Server 2017 (14.x) et versions
ultérieures d’Azure SQL Database
Azure SQL Managed Instance
SQL database dans Microsoft Fabric
Retourne la représentation en caractères (JSON) de l’ID d’arête d’un ID d’objet et d’un ID de graphe donnés.
Syntaxe
EDGE_ID_FROM_PARTS ( object_id, graph_id )
Arguments
object_id
Entier représentant l’ID d’objet de la table d’arête.
graph_id
Valeur bigint de l’ID de graphe d’une arête.
Valeur retournée
Retourne une représentation en caractères (JSON) nvarchar(1000) de l’ID d’arête. La valeur renvoyée peut être NULL si l’un des arguments fournis n’est pas valide.
Notes
- La représentation en caractères (JSON) de l’ID d’arête retourné par
EDGE_ID_FROM_PARTSest un détail spécifique de l’implémentation qui est susceptible de changer. -
EDGE_ID_FROM_PARTSest la seule méthode prise en charge pour construire une représentation en caractères appropriée (JSON) de l’ID d’arête. -
EDGE_ID_FROM_PARTSs’avère utile dans les cas d’insertion en bloc de données dans une table d’arête, quand les données sources ont une clé naturelle ou de substitution appropriée avec un type de données entier. - La valeur renvoyée par
EDGE_ID_FROM_PARTSpeut être utilisée pour renseigner la colonne$edge_iddans une table d’arête. - Pour que
EDGE_ID_FROM_PARTSretourne une représentation en caractères valide (JSON) d’un ID d’arête, le paramètreobject_iddoit correspondre à une table d’arête existante. Le paramètregraph_idpeut être n’importe quel entier valide, mais il n’a pas besoin d’exister dans cette table d’arête. Si l’une de ces vérifications échoue,EDGE_ID_FROM_PARTSretourne NULL.
Exemples
L’exemple suivant utilise le fournisseur d’ensembles de lignes OPENROWSET pour récupérer les colonnes dataset_key et rating à partir d’un fichier CSV stocké sur un compte de stockage Azure. Il utilise ensuite EDGE_ID_FROM_PARTS pour créer la représentation en caractères de $edge_id, à l’aide de la dataset_key issue du fichier CSV. Il utilise aussi NODE_ID_FROM_PARTS à deux reprises pour créer les représentations en caractères appropriées de $from_id (pour la table de nœud Person) et $to_id (pour la table de nœud Restaurant) respectivement. Ces données transformées sont alors insérées (en bloc) dans la table d’arête likes.
INSERT INTO likes($edge_id, $from_id, $to_id, rating)
SELECT EDGE_ID_FROM_PARTS(OBJECT_ID('likes'), dataset_key) as from_id
, NODE_ID_FROM_PARTS(OBJECT_ID('Person'), ID) as from_id
, NODE_ID_FROM_PARTS(OBJECT_ID('Restaurant'), ID) as to_id
, rating
FROM OPENROWSET (BULK 'person_likes_restaurant.csv',
DATA_SOURCE = 'staging_data_source',
FORMATFILE = 'format-files/likes.xml',
FORMATFILE_DATA_SOURCE = 'format_files_source',
FIRSTROW = 2) AS staging_data;
;