Introduktion till SQL-nycklar
Nycklar är fält i relationstabellen som skapar relationer mellan andra tabeller, upprätthåller integritet, unikhet etc. I det här ämnet kommer vi att lära oss om SQL-nycklar.
I RDBMS spelar nycklar en viktig roll. Detta deltar i flera aktiviteter i relationsdatabasen. Med hjälp av Key kan du hämta data mycket snabbare och effektivare. Det kan fastställa förhållandet i två eller flera tabeller. Användningen av nycklar gör det möjligt för oss att hålla giltiga och konsekventa data i databasen. Det användes också för att identifiera en tupel (rad) från tabellen på ett unikt sätt. Dessa tabeller kan ha flera kolumner.
I verkliga livet kan en tabell ha flera nycklar. Alla kolumner kan också deklareras som nyckel och dessa nycklar kan verkställas av databasen.
Syntax:
CREATE TABLE `customer` (
`cust_id` int(11) NOT NULL,
`cust_name` varchar(100) NOT NULL,
`cust_address` text NOT NULL,
`cust_aadhaar_number` varchar(50) DEFAULT NULL,
`cust_pan_number` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `customer` ADD PRIMARY KEY (`cust_id`);
I ovanstående SQL-fråga kan vi se hur en kolumn 'cust_id' är inställd som en primär nyckel.
Typ av SQL-nycklar
Flera typer av nycklar stöds av SQL Server.
Följande är listan med SQL-nycklar:
- Primärnyckel
- Unik nyckel
- Kandidatnyckel
- Alternativ nyckel
- Sammansatt nyckel
- Supernyckel
- Främmande nyckel
Till exempel
Kundtabell | ||||
cust_id | CUST_NAME | cust_address | cust_aadhaar_number | cust_pan_number |
100001 | Sunil Kumar | Noida | 372464389211 | ADSFS3456K |
100.002 | Ankit Gupta | Gr Noida | 442289458453 | CGHAD7583L |
100003 | Suresh Yadav | Nya Delhi | 878453444144 | NMKRT2278O |
100004 | Nilam Singh | Lucknow | 227643441123 | HFJFD3876U |
100005 | Amal Rawat | Ghaziabad | 932571156735 | CBMVA9734A |
100006 | Harsh Saxena | Kanpur | 1453534363319 | TRYUC2568H |
Nedan ges tabellen "Order" med relaterade data som motsvarar "cust_id" från kundtabellen.
Beställningstabell | ||
cust_id | order_month_year | beställningssumma |
100001 | 2019 - jan | $ 100.000 |
100.002 | 2019 - jan | $ 120.000 |
100003 | 2019 - jan | $ 100.000 |
100004 | 2019 - jan | $ 110.000 |
100001 | 2019 - feb | $ 105.000 |
100.002 | 2019 - feb | $ 125.000 |
Nu kommer vi att gå igenom en efter en på var och en av nycklarna:
1. Primär nyckel
Primär nyckel är ett fält som kan användas för att identifiera alla tuplar unikt i databasen. Endast en av kolumnerna kan deklareras som en primär nyckel. En primär nyckel kan inte ha ett NULL-värde.
Exempel: I ovan angivna relationstabell är “cust_id” den primära nyckeln eftersom den kan identifiera alla raden unikt från tabellen.
2. Unik nyckel
Unik nyckel kan vara ett fält eller en uppsättning fält som kan användas för att identifiera tupeln från databasen på ett unikt sätt. Ett eller flera fält kan deklareras som en unik nyckel. Den unika nyckelkolumnen kan också innehålla NULL-värdet. Användning av unik nyckel förbättrar prestanda för datainsamling. Det gör att söka efter poster från databasen mycket snabbare och effektivare.
Exempel: I ovan angivna relationstabell är “cust_aadhaar_number”, “cust_pan_number” unik nyckel eftersom det kan tillåta ett värde som NULL i kolumnen
3. Kandidatnyckel
Kandidatnyckel kan vara en kolumn eller grupp av kolumner som kan kvalificera sig för unik nyckel. Varje tabell har minst en kandidatnyckel. En tabell kan ha en eller flera kandidatnycklar. Varje kandidatnyckel kan fungera som en primär nyckel om det behövs i vissa scenarier.
Exempel: I ovan givna relationstabell är "cust_id", "cust_aadhaar_number", "cust_pan_number" kandidatnyckeln eftersom den kan identifiera alla raden unikt från tabellen. Dessa kolumner uppfyller också kriterierna som en primär nyckel.
4. Alternativtangent
Alternativ nyckel är den nyckel som kan användas som en primär nyckel om det behövs. Alternativ nyckel kvalificerar sig också att vara en primär nyckel men för tillfället är den inte den primära nyckeln.
Exempel: I ovan angivna relationstabell är “cust_aadhaar_number”, “cust_pan_number” alternativtangenten eftersom båda kolumnerna kan vara en primär nyckel men ännu inte vald för primärnyckeln.
5. Kompositnyckel
Composite Key är också känd som Compound Key / Concatenated Key. Composite Key refererar till en grupp med två eller flera kolumner som kan användas för att identifiera en tupel från tabellen på ett unikt sätt. En grupp i kolumnen i kombination med varandra kan identifiera en rad unikt men en enda kolumn i den gruppen lovar inte att identifiera raden unikt.
Exempel: I ovan angivna relationstabell, dvs Ordertabell, "cust_id", "order_month_year" -gruppen för dessa kolumner som används i kombination för att identifiera tupeln unikt i Ordertabellen. Den enskilda kolumnen i denna tabell kan inte identifiera tupeln unikt från Ordertabellen.
6. Supernyckel
Super Key är en kombination av kolumner, varje kolumn i tabellen förblir beroende av den. Super Key kan ha några fler kolumner i gruppen som kanske eller inte är nödvändiga för att identifiera tupeln unikt från tabellen. Candidate Key är delmängden av Super Key. Candidate Key kallas också minimal Super Key.
Exempel: I ovan angivna relationstabell är primärnyckel, kandidatnyckel och unik nyckel supernyckeln. Som en enda kolumn i kundtabellen är "cust_id" tillräckligt för att identifiera tuplorna unikt från tabellen. Varje uppsättning av kolumnen som innehåller 'cust_aadhaar_number', 'cust_pan_number' är en Super Key.
7. Utländsk nyckel
En utländsk nyckel är en kolumn som kallas primär nyckel i den andra tabellen, dvs. en primär nyckel i en tabell kan kallas en utländsk nyckel i en annan tabell. Foreign Key kan ha duplikat- och NULL-värden om den är definierad för att acceptera NULL-värden.
Exempel: I ovan angivna relationstabell är 'cust_id' primär nyckel i kundtabellen men 'cust_id' i ordertabellen känd som en 'utländsk nyckel'. Utländsk nyckel i en tabell blir alltid den primära nyckeln på det andra bordet.
Den ovan angivna bilden visar hur varje kolumn visas som en nyckel enligt deras kvalifikationer för att identifiera tuplorna unikt från tabellen. Skärmdump sammanfattar all nyckel genom användning av relationstabellen.
Slutsats - SQL-nycklar
SQL-nycklar är ett av attributen i den relationsdatabas. som spelar viktiga roller för att skapa en relation mellan två eller flera tabeller. Det hjälper också frågor att utföra snabbare, dvs hämtning av poster från databasen blir mycket snabbare med hjälp av nycklar. Tangenterna ställer också in olika begränsningar för att identifiera tuplerna på ett unikt sätt från den stora datan.
Rekommenderade artiklar
Detta är en guide till SQL-nycklar. Här diskuterar vi introduktionen till SQL-nycklar och 7 olika typer med lämpligt exempel i detalj. Du kan också titta på följande artikel.
- Särskilt sökord i SQL
- Markörer i SQL
- Utländsk nyckel i SQL
- Transaktioner i SQL