Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
si applica a:✅ Magazzino di dati in Microsoft Fabric
Questa esercitazione illustra come usare IDENTITY le colonne in Fabric Data Warehouse per creare e gestire le chiavi surrogate in modo efficiente.
Prerequisiti
- Avere accesso a un elemento Warehouse in un'area di lavoro, con autorizzazioni di Collaboratore o superiori.
- Scegli lo strumento di query. Questa esercitazione include l'editor di query SQL nel portale di Microsoft Fabric, ma è possibile usare qualsiasi strumento di query T-SQL.
- Usare l'editor di query SQL nel portale di Microsoft Fabric.
- Conoscenza di base di T-SQL.
Che cos'è una colonna IDENTITY?
Una IDENTITY colonna è una colonna numerica che genera automaticamente valori univoci per le nuove righe. In questo modo è ideale per l'implementazione di chiavi surrogate, in quanto garantisce che ogni riga riceva un identificatore univoco senza input manuale.
Creare una colonna IDENTITY
Per definire una IDENTITY colonna, specificare la parola chiave IDENTITY nella definizione di colonna della CREATE TABLE sintassi T-SQL:
CREATE TABLE { warehouse_name.schema_name.table_name | schema_name.table_name | table_name } (
[column_name] BIGINT IDENTITY,
[ ,... n ],
-- Other columns here
);
Annotazioni
In Fabric Data Warehouse bigint è l'unico tipo di dati supportato per IDENTITY le colonne. Inoltre, le seed proprietà e increment di T-SQL IDENTITY non sono supportate. Per altre informazioni, vedere Colonne IDENTITY e IDENTITY (Transact-SQL). Per altre informazioni sulla creazione di tabelle, vedere Creare tabelle in Warehouse in Microsoft Fabric.
Creare una tabella con una colonna IDENTITY
In questa esercitazione, creeremo una versione più semplice della tabella Trip dall'open dataset NY Taxi, e aggiungeremo una nuova colonna TripIDIDENTITY. Ogni volta che viene inserita una nuova riga, TripID viene assegnato un nuovo valore univoco nella tabella.
Definire una tabella con una
IDENTITYcolonna:CREATE TABLE dbo.Trip ( TripID BIGINT IDENTITY, DateID int, MedallionID int, HackneyLicenseID int, PickupTimeID int, DropoffTimeID int );Si userà
COPY INTOquindi per inserire alcuni dati in questa tabella. Quando si usaCOPY INTOconIDENTITYcolonne, è necessario specificare l'elenco di colonne, mappandole alle colonne nei dati di origine.COPY INTO Trip (DateID 1, MedallionID 2, HackneyLicenseID 3, PickupTimeID 4, DropoffTimeID 5) FROM 'https://nytaxiblob.blob.core.windows.net/2013/Trip2013' WITH ( FILE_TYPE = 'CSV', FIELDTERMINATOR = '|', COMPRESSION = 'GZIP' );È possibile visualizzare in anteprima i dati e i valori assegnati alla
IDENTITYcolonna con una query semplice:SELECT TOP 10 * FROM Trip;L'output include il valore generato automaticamente per la
TripIDcolonna per ogni riga.Importante
I valori potrebbero essere diversi da quelli osservati in questo articolo.
IDENTITYle colonne producono valori casuali che sono sicuramente univoci, ma possono esserci gap nelle sequenze e i valori potrebbero non essere in ordine.È anche possibile usare
INSERT INTOper inserire nuove righe nella tabella.INSERT INTO dbo.Trip VALUES (20251104, 3524, 28804, 51931, 52252);L'elenco di colonne può essere fornito con
INSERT INTO, ma non è obbligatorio. Quando si specifica un elenco di colonne, specificare il nome di tutte le colonne per cui si forniscono i dati di input, ad eccezione dellaIDENTITYcolonna:INSERT INTO dbo.Trip (DateID, MedallionID, HackneyLicenseID, PickupTimeID, DropoffTimeID) VALUES (20251104, 8410, 24939, 74609, 49583);È possibile esaminare le righe inserite con una query semplice:
SELECT * FROM dbo.Trip WHERE DateID = 20251104;
Osservare i valori assegnati alle nuove righe: