Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Van toepassing op:✅ Warehouse in Microsoft Fabric
In deze zelfstudie wordt uitgelegd hoe u IDENTITY kolommen in Fabric Data Warehouse gebruikt om surrogaatsleutels efficiënt te creëren en te beheren.
Vereiste voorwaarden
- Toegang hebben tot een magazijnitem in een werkruimte, met inzender- of hogere machtigingen.
- Kies je query-tool. Deze zelfstudie bevat de SQL-queryeditor in de Microsoft Fabric-portal, maar u kunt elk hulpprogramma voor T-SQL-query's gebruiken.
- Gebruik de SQL-queryeditor in de Microsoft Fabric-portal.
- Basiskennis van T-SQL.
Wat is een IDENTITY-kolom?
Een IDENTITY kolom is een numerieke kolom die automatisch unieke waarden genereert voor nieuwe rijen. Dit maakt het ideaal voor het implementeren van surrogaatsleutels, omdat elke rij een unieke id ontvangt zonder handmatige invoer.
Een IDENTITY-kolom maken
Als u een IDENTITY kolom wilt definiëren, geeft u het trefwoord IDENTITY op in de kolomdefinitie van de CREATE TABLE T-SQL-syntaxis:
CREATE TABLE { warehouse_name.schema_name.table_name | schema_name.table_name | table_name } (
[column_name] BIGINT IDENTITY,
[ ,... n ],
-- Other columns here
);
Opmerking
In Fabric Data Warehouse is bigint het enige ondersteunde gegevenstype voor IDENTITY kolommen. Daarnaast worden de seed en increment eigenschappen van T-SQL IDENTITY niet ondersteund. Zie IDENTITY-kolommen en IDENTITY (Transact-SQL)voor meer informatie. Zie Tabellen maken in het magazijn in Microsoft Fabric voor meer informatie over het maken van tabellen.
Een tabel maken met een identity-kolom
In deze zelfstudie maken we een eenvoudigere versie van de Trip tabel op basis van de open gegevensset NY Taxi en voegen we er een nieuwe TripIDIDENTITY kolom aan toe. Telkens wanneer een nieuwe rij wordt ingevoegd, TripID wordt deze toegewezen met een nieuwe waarde die uniek is in de tabel.
Definieer een tabel met een
IDENTITYkolom:CREATE TABLE dbo.Trip ( TripID BIGINT IDENTITY, DateID int, MedallionID int, HackneyLicenseID int, PickupTimeID int, DropoffTimeID int );Vervolgens gebruiken
COPY INTOwe om enkele gegevens op te nemen in deze tabel. Wanneer uCOPY INTOgebruikt metIDENTITY-kolommen, moet u de kolommenlijst opgeven en deze toewijzen aan kolommen in de brongegevens.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' );We kunnen een voorbeeld bekijken van de gegevens en de waarden die aan de
IDENTITYkolom zijn toegewezen met een eenvoudige query:SELECT TOP 10 * FROM Trip;De uitvoer bevat de automatisch gegenereerde waarde voor de
TripIDkolom voor elke rij.Belangrijk
Uw waarden kunnen afwijken van de waarden die in dit artikel worden waargenomen.
IDENTITYkolommen produceren willekeurige waarden die gegarandeerd uniek zijn, maar er kunnen hiaten in de reeksen zijn en waarden zijn mogelijk niet in volgorde.U kunt ook
INSERT INTOgebruiken om nieuwe rijen aan uw tabel toe te voegen.INSERT INTO dbo.Trip VALUES (20251104, 3524, 28804, 51931, 52252);De kolomlijst kan worden opgegeven met
INSERT INTO, maar dit is niet vereist. Wanneer u een kolomlijst opgeeft, geeft u de naam op van alle kolommen waarvoor u invoergegevens opgeeft, met uitzondering van deIDENTITYkolom:INSERT INTO dbo.Trip (DateID, MedallionID, HackneyLicenseID, PickupTimeID, DropoffTimeID) VALUES (20251104, 8410, 24939, 74609, 49583);We kunnen de rijen bekijken die zijn ingevoegd met een eenvoudige query:
SELECT * FROM dbo.Trip WHERE DateID = 20251104;
Bekijk de waarden die zijn toegewezen aan de nieuwe rijen: